社区讨论
WA40pts十重循环求条
P2089烤鸡参与者 8已保存回复 14
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 14 条
- 当前快照
- 1 份
- 快照标识符
- @mkhnb6uo
- 此快照首次捕获于
- 2026/01/17 09:45 上个月
- 此快照最后确认于
- 2026/01/19 17:40 上个月
CPP
#include<bits/stdc++.h>
#define int long long
#define endl "\n"
using namespace std;
const int mod=1e9+7;
const int inf=1e13;
int max(int A,int B){return (A>B)?A:B;}
int min(int A,int B){return (A<B)?A:B;}
string num(int a){
if(a==10) return "10";
string s;
s.push_back(char(a+'0'));
return s;
}signed main(){
ios::sync_with_stdio(0);
cin.tie(0),cout.tie(0);
// freopen("meishi1.out","w",stdout);
vector<string> vec;
int n,ans=0;cin>>n;
if(n>30||n<10){cout<<0;return 0;}
for(int i1=1;i1<=10;i1++){
for(int i2=1;i2<=10;i2++){
for(int i3=1;i3<=10;i3++){
if(i1+i2+i3>30) break;
for(int i4=1;i4<=10;i4++){
if(i1+i2+i3+i4>30) break;
for(int i5=1;i5<=10;i5++){
if(i1+i2+i3+i4+i5>30) break;
for(int i6=1;i6<=10;i6++){
if(i1+i2+i3+i4+i5+i6>30) break;
for(int i7=1;i7<=10;i7++){
if(i1+i2+i3+i4+i5+i6+i7>30) break;
for(int i8=1;i8<=10;i8++){
if(i1+i2+i3+i4+i5+i6+i7+i8>30) break;
// if(i1+i2+i3+i4+i5+i6+i7+i8+20<n) continue;
for(int i9=1;i9<=10;i9++){
if(i1+i2+i3+i4+i5+i6+i7+i8+i9>30) break;
// if(i1+i2+i3+i4+i5+i6+i7+i8+i9+10<n) continue;
// for(int i10=1;i10<=10;i10++){
int val=i1+i2+i3+i4+i5+i6+i7+i8+i9;
if(val+10>=n&&val+1<=n){
ans++;
string s1=num(i1)+' '+num(i2)+' '+num(i3)+' '+num(i4)+' '+num(i5)+' '+num(i6)+' '+num(i7)+' '+num(i8)+' '+num(i9)+' '+num(n-val)+endl;
vec.push_back(s1);
}
// }
}
}
}
}
}
}
}
}
}cout<<ans<<endl;
for(int i=0;i<vec.size();i++) cout<<vec[i];
return 0;
}
回复
共 14 条回复,欢迎继续交流。
正在加载回复...