错的暴力:
#include<iostream>
using namespace std;
int main(){
int a;
cin>>a;
int c=0;
for(int i=a;i>=0;i--){
for(int b=a;b>=0;b--){
int j=a-i-b;
if(i5+b3+j/3a && j%30){
c+=1;
}
}
}
cout <<c<<endl;
return 0;
}
正确:
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,sum=0;
cin>>n;
int flag = 0;
for(int a=0;a<=n/5;a++){
int b = (n-7a)/4;
int c = n-a-b;
if(c%3==0 && (n-7a)%4==0 && b>=0){
//printf("%d %d %d\n",a,b,c);
//cout<<a<<" "<<b<<" "<<c<<"\n";
sum++;
flag = 1;
}
}
cout<<sum;
return 0;
}