분류 전체보기
-
[백준/BOJ] 5427번 불 (C++)알고리즘 문제풀이/백준 2020. 11. 24. 10:54
www.acmicpc.net/problem/5427 5427번: 불 상근이는 빈 공간과 벽으로 이루어진 건물에 갇혀있다. 건물의 일부에는 불이 났고, 상근이는 출구를 향해 뛰고 있다. 매 초마다, 불은 동서남북 방향으로 인접한 빈 공간으로 퍼져나간다. 벽에 www.acmicpc.net BFS 문제 유형중 하나입니다. 문제를 해결하는 불의 확산과 상근이의 이동을 체크할 수 있는 배열을 각각 선언하고, 각각의 BFS를 구현 하는 것입니다. BFS가 진행되면서 각각의 배열인 fire와 visit에 시간이 기록됩니다. 여기서 구하는 시간은 상근이가 나중에 이동을 할 때 해당 케이스에서 빠져나갈 수 있는지 없는지를 결정하는 중요한 요소가 됩니다. (아래 코드의 주석을 참고하시면 될 것 같습니다.) #include..
-
[백준/BOJ] 10026번 적록색약 (C++)알고리즘 문제풀이/백준 2020. 11. 23. 17:17
www.acmicpc.net/problem/10026 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net 난이도가 쉬운 BFS 문제였습니다. 적록색약이 아닌 사람이 봤을 때 구역의 총 개수를 먼저 구한 후, 색의 입력을 받은 map 배열에서 G의 값을 전부 R로 바꾸어 적록색약인 사람이 봤을 때 구역의 총 개수를 구하면 되는 문제입니다. #include #include #include #include #include using namespace std; int n, first, second; char map..
-
[Python] 넘파이(Numpy)프로그래밍/Python 2020. 11. 23. 16:43
넘파이 ※ 라이브러리 사용법 import numpy A = numpy.array([1, 2]) print("A == ", A, ", type == ", type(A)) # 결과 A == [1 2] , type == import numpy as np A = np.array([1, 2]) print("A == ", A, ", type == ", type(A)) # 결과 A == [1 2] , type == from numpy import exp result = exp(1) print("result == ", result, ", type == ", type(result)) # 결과 result == 2.718281828459045 , type == from numpy import * result = exp(1..
-
[백준/BOJ] 9466번 텀 프로젝트 (C++)알고리즘 문제풀이/백준 2020. 11. 23. 12:43
www.acmicpc.net/problem/9466 9466번: 텀 프로젝트 이번 가을학기에 '문제 해결' 강의를 신청한 학생들은 텀 프로젝트를 수행해야 한다. 프로젝트 팀원 수에는 제한이 없다. 심지어 모든 학생들이 동일한 팀의 팀원인 경우와 같이 한 팀만 있을 www.acmicpc.net BFS로 풀다가 시간 초과 때문에 2시간 날린 문제 ... (다시 풀기) lmcoa15.tistory.com/51 백준 9486번 - 텀 프로젝트 https://www.acmicpc.net/problem/9466 그래프 문제 중에서 사이클에 대한 개념을 알고 있는지에 대한 문제이다. 학생들이 함께 프로젝트를 하고 싶은 학생을 가리키고 있을 때 사이클에 대한 개수가 몇 개 lmcoa15.tistory.com 결국 구글..
-
[백준/BOJ] 4889번 안정적인 문자열 (C++)알고리즘 문제풀이/백준 2020. 11. 22. 00:06
www.acmicpc.net/problem/4889 4889번: 안정적인 문자열 입력은 여러 개의 데이터 세트로 이루어져 있다. 각 데이터 세트는 한 줄로 이루어져 있다. 줄에는 여는 괄호와 닫는 괄호만으로 이루어진 문자열이 주어진다. 문자열의 길이가 2000을 넘는 경우 www.acmicpc.net 괄호가 입력으로 들어올 때 고려해야 할 경우는 다음과 같습니다. 1. 괄호의 짝이 맞는 경우 2. '}' 가 먼저 들어온 경우 먼저 1번의 경우 괄호 문자열이 입력으로 들어올 때, 짝이 맞는 경우는 전부 제거해줘야 합니다. 그리고 2번의 경우는 스택이 비어있을 때, '}' 가 먼저 들어온 경우 이는 변환이 필요하기 때문에 변환한 수를 증가시키고, 스택에 변환된 괄호의 문자를 넣어줍니다. 이는 나중에 스택의 ..
-
[Python] 클래스, 예외처리프로그래밍/Python 2020. 11. 21. 20:37
클래스, 예외처리 클래스(Class) 파이썬 클래스는 class 키워드를 사용하여 자신만의 데이터 타입을 만들 수 있음 파이썬 클래스에서는 _ init _ 메서드가 생성자(constructor) 역할을 수행하여, 인스턴스가 만들어 질 때 한번만 호출됨 파이썬 클래스에서는 메서드의 첫번째 인수로 자신의 인스턴스를 나타내는 self를 반드시 기술해야 함 기본적으로 파이썬에서는 메서드와 속성이 모두 public class Person: def __init__(self, name): # 생성자 self.name = name print(self.name + " is initialized") def work(self, company): print(self.name + " is working in " + compan..
-
[Python] 함수, 람다프로그래밍/Python 2020. 11. 21. 18:13
함수, 람다 함수(Function) 파이썬 함수는 def 함수이름 (입력1, 입력2, ....): 형태를 가짐 파이썬 함수는 한 개 이상의 return 값을 반환할 수 있음 return 값은 콤마(,)로 분리하여 받거나 tuple 형태로 받을 수 있음 def sum(x, y): s = x + y return s result = sum(10, 20) print(result) # 결과 30 def multi_ret_function(x): return x + 1, x + 2, x + 3 # return (x + 1, x + 2, x + 3) x = 100 y1, y2, y3 = multi_ret_function(x) print(y1, y2, y3) # 결과 101 102 103 default parameter..
-
[Python] 조건문, 반복문프로그래밍/Python 2020. 11. 21. 18:11
조건문, 반복문 조건문 if a = 1 if a > 0: print("a == ", a) print("positive number") elif a == 0: print("a == ", a) print("zero") else: print("a == ", a) print("negative number") # 결과 a == 1 positive number list_data = [10, 20, 30, 40, 50] dict_data = {'key1' : 1, 'key2' : 2} if 45 in list_data: print("45 is in list_data") else: print("45 is not in list_data") if 'key1' in dict_data: print("key1 is in dic..