题目:将1块钱分1分,2分,5分硬币,分完之后,保证每种硬币至少有一个,问有多少种分法
我这个是用三重循环做的,谁能用两重循环搞定,这分就给谁了。。
class aa{
public static void main(String[] args) {
// TODO: Add your code here
int x,y,z=0;
int n=0;
for(x=1;x<2000;x++){
for(y=1;y<(10000-5*x)+1;y++){
for(z=1;z<(10000-2*y)+1;z++){
if(((5*x)+(2*y)+z)==10000){
n+=1;
System.out.println (x+"\t"+ y+"\t"+z);
}
}
}
}
System.out.println(n);
}}
我这个是用三重循环做的,谁能用两重循环搞定,这分就给谁了。。
class aa{
public static void main(String[] args) {
// TODO: Add your code here
int x,y,z=0;
int n=0;
for(x=1;x<2000;x++){
for(y=1;y<(10000-5*x)+1;y++){
for(z=1;z<(10000-2*y)+1;z++){
if(((5*x)+(2*y)+z)==10000){
n+=1;
System.out.println (x+"\t"+ y+"\t"+z);
}
}
}
}
System.out.println(n);
}}
班主在哪里,我要找他谈话。。
public int getNumGroup(){
int x,y,z=0;
int n=0;
for(x=1;x<20;x++){
for(y=1;y<(100-5*x)+1;y++){
for(z=1;z<(100-2*y)+1;z++){
if(((5*x)+(2*y)+z)==100){
n+=1;
System.out.println (x+"\t"+ y+"\t"+z);
}
}
}
}
return n;
} public static void main(String[] args) {
// TODO: Add your code here
MoneyGroup m=new MoneyGroup();
System.out.println (m.getNumGroup());
}
}
public static void main(String[] args) {
// TODO: Add your code here
int x,y,z=0;
int n=0;
for(x=1;x<2000;x++){
for(y=1;y<(10000-5*x)+1;y++){
n+=1;
}
}
System.out.println(n);
}} 这样不行吗?
还有必要历遍Z吗?
只要剩下的是Z的整倍数就可以了嘛....
public static void main(String[] args) {
// TODO: Add your code here
int value = 1000;
int x,y,z=0;
int n=0;
for(x=1;x<value/5;x++){
//偶数
if (x % 2== 0)
{
for (y=1; y< (value-5*x)/2 ; y++)
{
n+=1;
}
}
else{
for (y=1; y< (value-5*x-1)/2 ; y++)
{
n+=1;
}
}
}
System.out.println(n);
}}
47个2分+1个1分
46个2分+3个1分
......1分是万能的....你只需要管取多少个5分和多少个2分就可以了class aa{
public static void main(String[] args) {
// TODO: Add your code here
int x,y,z=0;
int n=0;
for(x=1;x<20;x++)
{
for(y=1;y<(100-5*x)/2+1;y++)
{
n+=1;
}
}
System.out.println(n);
}}
class bb{
public static void main(String[] args) {
// TODO: Add your code here
int x,y,z=0;
int n=0;
for(x=1;x<200;x++){
for(y=1;y<(1000-5*x)+1;y++){
if( (1000-(5*x)-(2*y))>0){
n+=1;
//System.out.println (x+"\t"+ y+"\t"+z);
}
}
}
System.out.println(n);
}
}
这个分给你的,历害,佩服
答案为461
public class ComputeOneYuan {
public static void main(String[] args)
{
int n=0;
int t=1;
if(t==1)
{
for(int i=1;i<94;i++)
for(int j=1;j<50;j++)
if(((100-i-2*j)/5)>0
&&(100-i-2*j)%5==0)
n++;
}
if(t==2)
{
for(int i=1;i<20;i++)
for(int j=1;j<50;j++)
if((100-5*i-2*j)>0)
n++;
}
System.out.println("解法有 "+n+"种");
}}