Post List

[BOJ] 백준 1110 더하기 사이클

[BOJ] 백준 1110 더하기 사이클



문제 링크 : https://www.acmicpc.net/problem/1110


이 문제는 문제에서 정의된 새로운 숫자를 구하는 공식을 그대로 코드로 옮기면 되는 문제 입니다. 사이클을 구하기 위해 반복문을 사용하는데, 이를 간결하게 사용하지 않으면 시간초과가 날 수 있습니다.


소스 코드 :






#include 
using namespace std;

int main() {
 int N;
 cin >> N; cin.ignore();
 int newN = N;
 int cycle = 0;
 do {
  cycle++;
  if (newN < 10) {
   int b = newN % 10;
   newN = (b * 10) + b;
  }
  else {
   int a = newN / 10;
   int b = newN % 10;
   newN = (b * 10) + ((a + b) % 10);
  }
 } while (newN != N);
 cout << cycle << endl;
}

댓글