下面我们直接放代码,可以看出这是学完for循环就能看懂的,很好的一个工作。
题面在此
#include
using namespace std;
int l,n;
int main(){
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
cin>>l>>n;
if(n==2){
int ans=0;
for(int i=0; i<=l; i++){
for(int j=0; j<=l; j++){
if(i+j>l) break;
for(int a=0; a<=l; a++){
if(a+i>l) break;
for(int b=0; b<=l; b++){
if(b+j>l) break;
if(a+b>l) break;
if(a+b==l&&b+j==l&&i+j==l&&i+a==l) ans++;
}
}
}
}
cout<l) break;
for(int c=0; c<=l; c++){
if(a+b+c>l) break;
for(int d=0; d<=l; d++){
if(a+d>l) break;
for(int e=0; e<=l; e++){
if(e+b>l) break;
if(e+d>l) break;
for(int f=0; f<=l; f++){
if(f+c>l) break;
if(f+e+d>l) break;
for(int g=0; g<=l; g++){
if(g+a+d>l) break;
for(int h=0; h<=l; h++){
if(g+h>l) break;
if(b+e+h>l) break;
for(int i=0; i<=l; i++){
if(g+h+i>l) break;
if(c+f+i>l) break;
if(a+b+c==l&&d+e+f==l&&g+h+i==l&&a+d+g==l&&b+e+h==l&&c+f+i==l) ans++;
}
}
}
}
}
}
}
}
}
cout<l) break;
for(int c=0; c<=l; c++){
if(a+b+c>l) break;
for(int d=0; d<=l; d++){
if(a+b+c+d>l) break;
for(int e=0; e<=l; e++){
if(a+e>l) break;
for(int f=0; f<=l; f++){
if(f+b>l) break;
if(f+e>l) break;
for(int g=0; g<=l; g++){
if(g+c>l) break;
if(e+f+g>l) break;
for(int h=0; h<=l; h++){
if(h+d>l) break;
if(e+f+g+h>l) break;
for(int i=0; i<=l; i++){
if(i+a+e>l) break;
for(int j=0; j<=l; j++){
if(j+f+b>l) break;
if(i+j>l) break;
for(int k=0; k<=l; k++){
if(k+g+c>l) break;
if(j+i+k>l) break;
for(int p=0; p<=l; p++){
if(p+d+h>l) break;
if(i+k+j+p>l) break;
for(int u=0; u<=l; u++){
if(u+i+a+e>l) break;
for(int v=0; v<=l; v++){
if(v+j+f+b>l) break;
if(u+v>l) break;
for(int w=0; w<=l; w++){
if(w+k+g+c>l) break;
if(v+u+w>l) break;
for(int x=0; x<=l; x++){
if(x+p+d+h>l) break;
if(u+v+w+x>l) break;
if(x+p+d+h==l&&w+k+g+c==l&&a+b+c+d==l&&e+f+g+h==l&&i+j+k+p==l&&u+v+w+x==l&&u+i+a+e==l&&v+j+f+b==l) ans++;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
cout<
代码量看上去很多,实际上一点也不少,但是我们有复制粘贴,写完一组改一改变量就好
最后祝你身体健康天天AC