1 条题解
-
3
构造满足条件的最小正整数显然需要优先放 ,并且要把 尽可能放在后面,比如 就要构造成 ,由此可得如下代码:
#include<bits/stdc++.h> using namespace std; int main(){ int t; cin>>t; for(int i=1;i<=t;i++){ int n; string s=""; cin>>n; if(n>45){ cout<<-1<<endl; continue; } for(int j=9;j>=1;j--){ if(j<=n){ s+=char(j+'0'); n-=j; }else if(n!=0){ s+=char(n+'0'); break; } } for(int j=s.length()-1;j>=0;j--) cout<<s[j]; cout<<endl; } }
- 1
信息
- ID
- 756
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- 递交数
- 111
- 已通过
- 30
- 上传者