Gửi bài giải
Điểm:
100,00 (OI)
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Người đăng:
Nguồn bài:
Dạng bài
Ngôn ngữ cho phép
C++, Pascal, Python, SCRATCH
Cho ~n~ là số nguyên dương. Số nguyên ~m~ là tổng của ~n~ với các chữ số của nó. ~n~ được gọi là nguồn của ~m~.
Ví dụ, ~n = 245~, khi đó ~m = 245 + 2 + 4 + 5 = 256~. Như vậy nguồn của ~256~ là ~245~.
Có những số không có nguồn và có số lại có nhiều nguồn. Ví dụ, số ~216~ có ~2~ nguồn là ~198~ và ~207~.
Yêu cầu: Cho số nguyên dương ~m~ (~m \le 10^{100}~) hãy tìm nguồn nhỏ nhất của nó, nếu không có ghi ra số 0
.
INPUT
Chứa duy nhất số ~m~.
OUTPUT
Chứa số ~n~ tìm được, nếu không có số nguồn ghi ra số 0
.
SAMPLE INPUT
216
SAMPLE OUTPUT
198
Bình luận
kq = int(2e9) f = open("songuon.INP",'r') g = open("songuon.OUT",'w') m = int(f.readline()) for s in range(1,91): k = n = m - s; t = 0; while (k > 0): dv = k % 10; k = k // 10; t += dv; if (t == s): g.write(t); else: g.write(0); f.close() g.close()