Coding Test
-
[SWEA] 1954. 달팽이 숫자 c++Coding Test/SW Expert Academy 2022. 11. 18. 13:01
문제 ※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다. 달팽이는 1부터 N*N까지의 숫자가 시계방향으로 이루어져 있다. 다음과 같이 정수 N을 입력 받아 N크기의 달팽이를 출력하시오. N이 3일 경우, 문제 해결 #include #include using namespace std; int dx[4] = { 1, 0, -1, 0}; int dy[4] = {0, 1, 0, -1}; int main(int argc, char** argv) { int test_case; int T; cin>>T; for(test_case = 1; test_case > n; int size = n * n, dir = 0; vector vec(n, vector(n, 0)); vec[0][0] = 1; int ..
-
[SWEA] 1959. 두 개의 숫자열 c++Coding Test/SW Expert Academy 2022. 11. 18. 09:50
문제 ※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다. N 개의 숫자로 구성된 숫자열 Ai (i=1~N) 와 M 개의 숫자로 구성된 숫자열 Bj (j=1~M) 가 있다.서로 마주보는 숫자들을 곱한 뒤 모두 더할 때 최댓값을 구하라. 위 예제의 정답은 아래와 같이 30 이 된다. 문제 해결 #include #include #include using namespace std; int main(int argc, char** argv) { int test_case; int T; cin>>T; for(test_case = 1; test_case > n >>m; vector A(n, 0), B(m,0); for(int i = 0; i > A[i]; } for(int..
-
[SWEA] 1961. 숫자 배열 회전 c++Coding Test/SW Expert Academy 2022. 11. 17. 16:45
문제 ※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다. N x N 행렬이 주어질 때, 시계 방향으로 90도, 180도, 270도 회전한 모양을 출력하라. input output 1 3 1 2 3 4 5 6 7 8 9 #1 741 987 369 852 654 258 963 321 147 문제 해결 0,0 0,1 0,2 1,0 1,1 1,2 2,0 2,1 2,2 > 90도 회전 2,0 1,0 0,0 2,1 1,1 0,1 2,2 1,2 0,2 > 180도 회전 2,2 2,1 2,0 1,2 1,1 1,0 0,2 0,1 0,0 > 270도 회전 0,2 1,2 2,2 0,1 1,1 2,1 0,0 1,0 2,0 회전에 따른 인덱스 변화를 확인하면 된다. #include using namespac..
-
[SWEA] 1970. 쉬운 거스름돈 c++Coding Test/SW Expert Academy 2022. 11. 16. 17:08
문제 S마켓에서 손님에게 거슬러 주어야 할 금액 N이 입력되면 돈의 최소 개수로 거슬러 주기 위하여 각 종류의 돈이 몇 개씩 필요한지 출력하라. N이 32850일 경우, 50,000 원 : 0개 10,000 원 : 3개 5,000 원 : 0개 1,000 원 : 2개 500 원 : 1개 100 원 : 3개 50 원 : 1개 10 원 : 0개 문제 해결 #include #include using namespace std; int main(int argc, char** argv) { int test_case; int T; cin>>T; int cash = 50000; for(test_case = 1; test_case > n; cout
-
[SWEA] 1974. 스도쿠 검증 c++Coding Test/SW Expert Academy 2022. 11. 16. 16:33
문제 9 X 9 크기의 스도쿠 퍼즐의 숫자들이 주어졌을 때, 위와 같이 겹치는 숫자가 없을 경우, 1을 정답으로 출력하고 그렇지 않을 경우 0 을 출력한다. 문제 해결 처음에는 1~9 까지의 합을 이용해서 문제를 풀어나갔지만, 10개 test중 5개만 계속 통과해서 방법을 바꾸었다. 1~9가 나왔는지 검사하는 방법으로 풀었다. #include #include #include using namespace std; int main(int argc, char** argv) { int test_case; int T; cin>>T; for(test_case = 1; test_case > board[i][j]; check[0][i][board[i][j]] = true; //행 검사 check[1][j][board[..
-
[SWEA] 1976. 시각 덧셈 c++Coding Test/SW Expert Academy 2022. 11. 16. 11:56
문제 ※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다. 시 분으로 이루어진 시각을 2개 입력 받아, 더한 값을 시 분으로 출력하는 프로그램을 작성하라. (시각은 12시간제로 표시한다. 즉, 시가 가질 수 있는 값은 1시부터 12시이다.) input output 3 3 17 1 39 8 22 5 10 6 53 2 12 #1 4 56 #2 1 32 #3 9 5 문제 해결 #include using namespace std; int main(int argc, char** argv) { int test_case; int T; cin>>T; for(test_case = 1; test_case > h1 >> m1 >> h2 >> m2; int h = 0, m = 0; m = (m1 + m2) ..