2231๋ฒ: ๋ถํดํฉ
์ด๋ค ์์ฐ์ N์ด ์์ ๋, ๊ทธ ์์ฐ์ N์ ๋ถํดํฉ์ N๊ณผ N์ ์ด๋ฃจ๋ ๊ฐ ์๋ฆฌ์์ ํฉ์ ์๋ฏธํ๋ค. ์ด๋ค ์์ฐ์ M์ ๋ถํดํฉ์ด N์ธ ๊ฒฝ์ฐ, M์ N์ ์์ฑ์๋ผ ํ๋ค. ์๋ฅผ ๋ค์ด, 245์ ๋ถํดํฉ์ 256(=245+2+4+5)์ด
www.acmicpc.net
๋ฌธ์
์ด๋ค ์์ฐ์ N์ด ์์ ๋, ๊ทธ ์์ฐ์ N์ ๋ถํดํฉ์ N๊ณผ N์ ์ด๋ฃจ๋ ๊ฐ ์๋ฆฌ์์ ํฉ์ ์๋ฏธํ๋ค. ์ด๋ค ์์ฐ์ M์ ๋ถํดํฉ์ด N์ธ ๊ฒฝ์ฐ, M์ N์ ์์ฑ์๋ผ ํ๋ค. ์๋ฅผ ๋ค์ด, 245์ ๋ถํดํฉ์ 256(=245+2+4+5)์ด ๋๋ค. ๋ฐ๋ผ์ 245๋ 256์ ์์ฑ์๊ฐ ๋๋ค. ๋ฌผ๋ก , ์ด๋ค ์์ฐ์์ ๊ฒฝ์ฐ์๋ ์์ฑ์๊ฐ ์์ ์๋ ์๋ค. ๋ฐ๋๋ก, ์์ฑ์๊ฐ ์ฌ๋ฌ ๊ฐ์ธ ์์ฐ์๋ ์์ ์ ์๋ค.
์์ฐ์ N์ด ์ฃผ์ด์ก์ ๋, N์ ๊ฐ์ฅ ์์ ์์ฑ์๋ฅผ ๊ตฌํด๋ด๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์์ฐ์ N(1 ≤ N ≤ 1,000,000)์ด ์ฃผ์ด์ง๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค์ ๋ต์ ์ถ๋ ฅํ๋ค. ์์ฑ์๊ฐ ์๋ ๊ฒฝ์ฐ์๋ 0์ ์ถ๋ ฅํ๋ค.
์์ ์ ๋ ฅ 1
216
์์ ์ถ๋ ฅ 1
198
ํ์ด
์ซ์ n๊ณผ n์ ๊ธธ์ด l์ด ์ ๋ ฅ๋๋ฉด n์ ๋ถํดํฉ m์ ์ถ๋ ฅํด์ฃผ๋ ํจ์ nm์ ์์ฑ
1. 1๋ถํฐ n๊น์ง ์์๋๋ก ๋ถํดํฉ์ ๊ตฌํด ๋ถํดํฉ์ด n๊ณผ ๊ฐ์ผ๋ฉด i๋ฅผ ์ถ๋ ฅํ๊ณ ์ข ๋ฃ
( n์ ๊ฐ์ฅ ์์ ์์ฑ์๋ฅผ ๊ตฌํด์ผ ํ๊ธฐ ๋๋ฌธ์ 1๋ถํฐ ์์๋๋ก ์คํ )
import java.util.Scanner;
public class B2231 {
static int nm(int n, int l) {
int m = n;
for(int i = 0; i < l; i++) {
m += n % 10;
n /= 10;
}
return m;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int l = Integer.toString(n).length();
for(int i = 1; i <= n; i++) {
if(n == nm(i, l)) {
System.out.println(i);
return;
}
}
System.out.println("0");
}
}