Codeforces 919 B. Perfect Number

 
B. Perfect Number
 
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

We consider a positive integer perfect, if and only if the sum of its digits is exactly 10. Given a positive integer k, your task is to find the k-th smallest perfect positive integer.

Input

A single line with a positive integer k (1 ≤ k ≤ 10 000).

Output

A single number, denoting the k-th smallest perfect integer.

Examples
input
1
output
19
input
2
output
28
Note

The first perfect integer is 19 and the second one is 28.

 

 这个题想吐槽一下,我一开始写的多组输入,交上RE了,改了多组输入过了,本来以为自己多组输入初始化什么的写挫了,赛后改了改交上去还是RE,后来直接WA,放弃。多组输入不知道为什么错。。。

 

代码:

 1 //B-这个题多组输入就不行。。。
 2 #include<iostream>
 3 #include<cstdio>
 4 #include<algorithm>
 5 #include<cstring>
 6 #include<cstdlib>
 7 #include<string.h>
 8 #include<set>
 9 #include<vector>
10 #include<queue>
11 #include<stack>
12 #include<map>
13 #include<cmath>
14 using namespace std;
15 int main(){
16     int n,cnt=0;
17     ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
18     cin>>n;
19     for(int i=0;i<30000000;i++){ 20 int temp=i; 21 int ans=0; 22 while(temp){ 23 int x=temp%10; 24 ans+=x; 25 temp/=10; 26  } 27 if(ans==10)cnt++; 28 if(cnt==n){ 29 cout<<i<<endl; 30 break; 31  } 32  } 33 }

 

转载于:https://www.cnblogs.com/ZERO-/p/9703641.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值