題目描述題目描述
用一張10元的紙幣兌換1角、5角和1元的硬幣,要求兌換硬幣的總數為20枚且每種硬幣至少要有1枚,問共有多少種換法?每種換法中各硬幣分別是多少枚?用一張10元的紙幣兌換1角、5角和1元的硬幣,要求兌換硬幣的總數為20枚且每種硬幣至少要有1枚,問共有多少種換法?每種換法中各硬幣分別是多少枚?
輸入輸入
無輸入無輸入
輸出輸出
第一行,輸出方法數n第一行,輸出方法數n
第二行到第n+1行輸出三個數分別代表一角的個數,五角的個數,一元的個數。第二行到第n+1行輸出三個數分別代表一角的個數,五角的個數,一元的個數。
uj5u.com熱心網友回復:
#include<bits/stdc++.h>
using namespace std;
int main(void)
{
int n1[101]={0};//一元數
int n2[101]={0};//五角數
int n3[101]={0};//一角數
int n=0;
for(int i=1;i<=18;i++)
{
for(int j=1;j<=18;j++)
{
if(i*10+j*5+(20-i-j)==100&&20-i-j>=1)
{
n++;
n1[n]=i,n2[n]=j,n3[n]=20-i-j;
}
}
}
cout<<n<<endl;
for(int i=1;i<=n;i++) printf("%d %d %d\n",n3[i],n2[i],n1[i]);
}
求采納,謝謝
uj5u.com熱心網友回復:
#include <stdio.h>int main()
{
int a[10],b[10],c[10];
int x,y,z;
int i=0;
for(int x=1;x<100;x++){
for(int y=1;y<20;y++){
for(int z=1;z<10;z++){
if(x+y+z==20){
if(x+5*y+10*z ==100){
a[i]=x;
b[i]=y;
c[i]=z;
i++;
}
}
}
}
}
printf("總共有%d種方案,具體如下\n",i);
for(int k=0;k<i;k++){
printf("方案 %d 1角:%d 5角:%d 1元:%d\n",k+1,a[k],b[k],c[k]);
}
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/74525.html
標籤:新手樂園
上一篇:大家能看看問題出在哪嘛?
下一篇:又是我,依舊求問基礎題
