728x90
안녕하세요
백준 알고리즘 문제풀이입니다
브론즈1 #1110번 "더하기 사이클" 입니다.
브론즈 4, 5를 풀다 갑자기 난이도가 올라갔네요
일정한 규칙을 통해 수가 변경되고, 동일한 수가 되면 멈추어 줍니다
여기서 규칙은 1읠 자리의 수가 10의 자리로 이동하고, 10자리와 1자리를 더하여 새로운 1의 자리에 입력해줍니다
2행: 첫 숫자를 입력 받습니다
4행: while문을 돌리기 위해, 비교할 숫자는 -1로 임의로 넣습니다. 입력받을 값이 0보다 큰수이니 while문에 들어가기전에는 같아질수 없습니다.
7행: 입력받은 값을 new_number에 저장해줍니다.
지금보니... c_number와 new_number 하나만 있어도 풀수가 있었겠네요...
9행: while문을 시작합니다. 입력값과 c_number가 같아지면 멈춥니다
10행: while을 한번 돌때마다 사이클을 1씩 증가시킵니다
새로운 숫자의 앞자리와 뒷자리를 따로 저장합니다
12행: 저장된 번호를 %10하여 1의 자리 값을 저장합니다
13행: //10으로 10의자리, %10으로 1의 자리를 구하여 더하여 줍니다. 단 10이 넘을수 있으니 %10을 하여 1의 자리값만 남깁니다
16행: 새로운 번호는 12행의 값에 10을 곱하고, 13행의 값을 더하여 만들어 줍니다
새로운 번호는 반복하여 입력된 값과 비교 됩니다
while문을 빠져나오면, 사이클 값을 출력해 줍니다
좋은 하루 되세요~~
728x90
반응형
'공부 > 백준 알고리즘' 카테고리의 다른 글
백준 알고리즘 - 브론즈3 #10818(Python) (0) | 2023.01.23 |
---|---|
백준 알고리즘 - 실버1 달성 (0) | 2023.01.20 |
백준 알고리즘 - 브론즈5 #2438, 2439(Python) (0) | 2023.01.17 |
백준 알고리즘 - 브론즈4 #15552(Python) (0) | 2023.01.16 |
백준 알고리즘 - 브론즈5 #25304(Python) (0) | 2023.01.15 |