Algorithm
-
4613. 러시아 국기 같은 깃발Algorithm/SWExpertAcademy 2020. 2. 24. 22:18
LEVEL D4 https://swexpertacademy.com/main/code/problem/problemSubmitHistory.do?contestProbId=AWQl9TIK8qoDFAXj SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 아래 조건을 만족하는 러시아 국기 색을 만들면 된다. 위에서 몇 줄(한 줄 이상)은 모두 흰색으로 칠해져 있어야 한다. 다음 몇 줄(한 줄 이상)은 모두 파란색으로 칠해져 있어야 한다. 나머지 줄(한 줄 이상)은 모두 빨간색으로 칠해져 있어야 한다. 현재 상태를 입력 받으면서 각 W, B, R의 색상을 체크했다. 재귀를 통하여 현재 어떤 색으로 칠해왔는지를 판단하여 다음..
-
1238. [S/W 문제해결 기본] 10일차 - ContactAlgorithm/SWExpertAcademy 2020. 2. 24. 21:07
LEVEL D4 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV15B1cKAKwCFAYD&categoryId=AV15B1cKAKwCFAYD&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com BFS 기본문제 유형이다. 소스보기 더보기 #include #include #include using namespace std; int map[101][101]; int visited[101]; int N, start, maxVal; int bfs() { int lastNum; queue que; qu..
-
3234. 준환이의 양팔저울Algorithm/SWExpertAcademy 2020. 2. 23. 22:32
LEVEL D4 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWAe7XSKfUUDFAUw&categoryId=AWAe7XSKfUUDFAUw&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 처음에 완전탐색으로 풀었지만 시간초과가 발생하였다. 조건 하나를 추가하여 패스되었다. left값이 최대값을 갱신하기 바로 전의 조합의 갯수를(N! * 2^N) 모두 한번에 더하여 재귀를 줄이는 방법이였다. 소스보기 더보기 #include int map[9]; int visited[9]; int fact..
-
3135. 홍준이의 사전놀이Algorithm/SWExpertAcademy 2020. 2. 22. 18:01
LEVEL D5 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV_6pTXqsXUDFAWS&categoryId=AV_6pTXqsXUDFAWS&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 트라이 자료구조를 공부하고 풀었다. 현재까지 저장 된 문자열 중 특정 문자열로 시작되는 문자열의 갯수를 찾는 문제였다. INSERT가 들어오면 문자열을 저장하는 것이고, QUERY가 올 경우 저장 된 문자열 중 특정 문자열로 시작되는 문자열 갯수를 리턴하면 된다. 처음엔 QUERY가 들어 올 경우 저장..
-
1247. [S/W 문제해결 응용] 3일차 - 최적 경로Algorithm/SWExpertAcademy 2020. 2. 22. 16:15
LEVEL D5 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV15OZ4qAPICFAYD SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 회사 -> 배송지 -> 집으로 오는 최단 거리를 구하는 문제였다. 완전탐색을 통하여 모든 거리를 구하여 정답을 구하였다. 소스코드 더보기 #include #include #include #define MAX_NODE 100 using namespace std; const int maxAnswer = 0x7fffffff; int answer = maxAnswer; int visited..
-
7088. 은기의 송아지 세기Algorithm/SWExpertAcademy 2020. 2. 20. 22:32
LEVEL D4 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWkIeU76A9cDFAXC SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com a, b 구간의 송아지의 품종들의 갯수를 구하는 문제이다. 품종은 (1, 2, 3)으로 나뉜다. 품종을 입력 받으면서 누적값을 구해나갔다. b구간의 누적값 - (a - 1)구간의 전의 구간의 누적값을 구하여 문제를 해결하였다. * map의 0번 인덱스는 항상 0이기 때문에 다음 TestCase에 진입하여도 0으로 시작하기 때문에 map을 초기화하지 않아도 상관없었다. 소스코드 더보기..
-
7792. 반장 선출Algorithm/SWExpertAcademy 2020. 2. 20. 00:20
LEVEL D4 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWsBNHuqMMADFARG SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 각 알파벳 별로 bitmask를 사용하였다. 현재 알파벳을 or 연산을 통해 더해나가면서 &연산을 통해 기존에 없을 경우에만 카운트를 증가시켜 알파벳 종류를 찾아 최대 갯수가 되면 정답을 체크하는 방식으로 문제에 접근하였다. 소스코드 더보기 #include #include #include using namespace std; int N, T; int map[26]; int answe..
-
9480. 민정이와 광직이의 알파벳 공부Algorithm/SWExpertAcademy 2020. 2. 18. 22:36
LEVEL D3 단어를 합쳐서 모든 알파벳이 (a~z까지) 1개 이상 존재하는 조합을 찾는 문제이다. 가지고 있는 모든 단어의 조합을 구하여 문제를 해결하였다. a = 0x01 . b = 0x02, c = 0x04로 초기화를 한 후에 단어에 맞게 비트연산을 하여 구했다. abc인 경우 0x07을 가지게 되며 0000 0111로 표현된다. abc 와 fa를 더 할 경우 da(0x05) 는 0000 1111로 표현 되기 때문에 현재 a,b,c,d를 가지고 있다고 생각하고 풀었다. https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AXAdrmW61ssDFAXq&categoryId=AXAdrmW61ssDFAXq&categor..