Điểm:
100 (p)
Thời gian:
1.5s
Bộ nhớ:
256M
Input:
bàn phím
Output:
màn hình
Rùa có rất nhiều thắc mắc trong đầu. Hôm nay Rùa đặc biệt thắc mắc đến câu hỏi số 99, với nội dung như sau:
Có một số nguyên dương \(N\), số nguyên dương nhỏ nhất có tổng các chữ số của nó bằng \(N\) là số mấy?
Input
Số nguyên dương \(N\) \((1 \leq N \leq 10^{6})\)
Output
Số nguyên dương nhỏ nhất mà có tổng các chữ của nó bằng \(N\).
Example
Test 1
Input
10
Output
19
Note
- Số \(19\) có tổng các chữ số là \(1+9=10\). Ngoài ra còn các số khác cũng có tổng các chữ số là \(10\), ví dụ như: \(28, 37, 46, 55,...\) nhưng số \(19\) là số nhỏ nhất.
Test 2
Input
18
Output
99
Bình luận
include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
int f=n/9;
int f2=n%9;
if(f2!=0)
{
cout<<f2;
}
for(int i=1;i<=f;i++)
{
cout<<9;
}
}
//code kham khảo cho ae đây
n=int(input())
if n%9==0:
print ('9' * int(n//9))
else:
print (n%9,'9'*int(n//9),sep='')
có thế thôi pyhton
hint
nhập n
nếu n<10=>in ra n
nếu n>=10 thì
lấy n trừ dần đi 9 đến khi ko trừ đc nữa với mỗi lần trừ thì k tăng lên 1
n-(tổng k chữ số 9) và k chữ số 9 (không cách)
ví dụ
n=320
=>k=35 chứ số 9
lấy 35*9=315
320-315=5;
=>đáp án bằng: 599999999999999999999999999999999999
bài này khó thế
có ai biết thuật toán không chỉ mình với
bài này dùng xâu đó
Bạn cứ xem đáp số của test là biết liền:)
Câu hỏi "số 99" là có lý do cả 🙂