일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Spring
- Computer Science
- Spotify Api
- 스포티파이
- SECS-II
- 백준
- 파이썬
- spotify
- Gem
- spring boot
- modern c++
- Baekjoon
- 회귀
- java
- programmers
- CS
- C++
- regression
- 비트겟
- python
- SWEA
- Spring JPA
- 자바
- MYSQL
- SECS/GEM
- 프로그래머스
- SECS
- c
- 회원가입
- SW Expert Academy
Archives
- Today
- Total
비버놀로지
[BAEKJOON 백준] 1110 더하기 사이클 본문
728x90
26부터 시작한다. 2+6 = 8이다. 새로운 수는 68이다. 6+8 = 14이다. 새로운 수는 84이다. 8+4 = 12이다. 새로운 수는 42이다. 4+2 = 6이다. 새로운 수는 26이다.
위의 예는 4번만에 원래 수로 돌아올 수 있다. 따라서 26의 사이클의 길이는 4이다.
N은 두자리 수이기 때문에, 새로운 수는 입력값을 10으로 나눈값과 10으로 나눴을때 나오는 나머지값을 더해준 값을 새로운 값으로 만들어준다.
그리고 그 더해준 값의 앞자리는 입력값의 일의 자리수가 새로운 수의 십의 자리수가 되고 되해준 값이 일의 자리가 된다.
그리고 새로운 수를 만들때 입력 수의 십의 자리와 일의 자리의 합이 두자리 일경우 일의자리를 가져와 일의 자리로 쓰고, 이전 수의 일의 자리 수를 십의 자리로 만들어 새로운 수를 만들어 준다.
그렇게 만들어진 수가 처음 수와 같아질때 몇번 새로운 수를 만들었는지를 출력해 준다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int N=sc.nextInt();
int cnt=0;
int temp=N;
int temp2=0;
while(true) {
temp2=(temp/10)+(temp%10);
temp=(temp%10)*10+(temp2%10);
cnt++;
if(temp==N) {
break;
}
}
System.out.println(cnt);
}
}
728x90
'ALGORITM > JAVA' 카테고리의 다른 글
[BAEKJOON 백준] 1212 8진수 2진수 (0) | 2021.01.10 |
---|---|
[BAEKJOON 백준] 1157 단어 공부 (0) | 2021.01.10 |
[BAEKJOON 백준] 1074 Z (0) | 2021.01.10 |
[BAEKJOON 백준] 1032 명령 프롬프트 (0) | 2021.01.10 |
[BAEKJOON 백준] 1008 A/B (0) | 2021.01.10 |
Comments