#includeint main() { int tc=1; while (tc <= 10) { int pw[8] = { 0 ,}; bool flag = false; scanf("%d", &tc); for (int i = 0; i < 8; i++) { scanf("%d", &pw[i]); } while (true) { for (int i = 1; i <= 5; i++) { //1 사이클 int tmp = pw[0] - i; if (tmp <= 0) { tmp = 0; flag = true; // pw 완성 } for (int j = 0; j < 7; j++) { //한칸씩 당기기 pw[j] = pw[j + 1]; } pw[7] = tmp; if (flag) break; } if (flag) break; } printf("#%d ", tc); for (int i = 0; i < 8; i++) { printf("%d ", pw[i]); } printf("\n"); tc++; } return 0; }
문제에 주어진 대로 배열의 [0]번째 요소에서 해당 값만큼 감소시킨 후 tmp에 담아주고,
[1]번째 요소부터 마지막요소까지 한칸씩 당겨준 다음에 계산한 값을 맨뒤로 삽입해 주는 것을 반복했다.
testcase 개수는 10개로 제한.
input 파일에 값들이 testcase랑 배열 값이랑 공백으로 구분되어 있지 않으니 입력할 때 주의할 것.
'Algorithm Problem Solving' 카테고리의 다른 글
1218. [S/W 문제해결 기본] 4일차 - 괄호 짝짓기 (0) | 2019.01.15 |
---|---|
[BOJ] 1018 : 체스판 다시 칠하기 (0) | 2019.01.11 |
1206. [S/W 문제해결 기본] 1일차 - View (0) | 2019.01.11 |
[BOJ] 15686 : 치킨배달 (1) | 2019.01.08 |
Baby-gin (0) | 2019.01.08 |