#include
using namespace std;
int nums[]={5,2,1};
int ans=0;
int total=10;
void dfs(int pre){
if(total==0){
ans++;
return;
}
for(int i=0;i<3;++i){
if(total continue; if(pre continue; total-=nums[i]; dfs(nums[i]); total+=nums[i]; } } int main(){ dfs(10); printf("%d\n",ans); } #include #include #include using namespace std; int nums[10]; int gcd(int a,int b){ if(b==0) return a; return gcd(b,a%b); } int main(){ srand((unsigned)time(NULL)); for(int i=0;i<5;++i){ for(int j=0;j<10;++j){ nums[j]=(rand()%90)+10; printf("%d ",nums[j]); } printf("\n"); int ans=nums[0]; for(int j=1;j<10;++j){ ans=gcd(ans,nums[j]); } printf("%d\n",ans); } }
#include
int main()
{
int n=10,a=1,b=2,c=5;
int i,j,k;
for(i=0;i<=10;i++)
for(j=0;j<=5;j++)
for(k=0;k<=2;k++)
{
if(a*i+b*j+c*k==n)
printf("1角:%d, 2角:%d, 5角:%d\n",i,j,k);
}
return 0;
}
这是第一题的代码,等我第二题。。。