也要顶你个 o(∩_∩)o o〔∩_∩〕o 学习哦::05:: ::05:: ::04:: ::04:: ::04:: 看看::01:: ::01:: ::01:: 看看是什么东西。。。一分?两分?。。。看看先。。。 呵呵,还没学到C++类,以后再搞吧 ::11:: ::11:: ::11:: 硬着头皮看 我晕 就讨厌 C+里面的数学题了
天啊 顶!::04:: ::05::
偶现在还在学C列 不知道对不对 请指教
#include<stdio.h>void main()
{
int a, b, c d;
a=0;
b=o;
c=0;
while(d=100,a++,b++,c++);
{
d=a+2*b+5*c;
}
printf("d%,%d,%d\n",a,b,c)
} main()
{
int a,b,c;
int s=0;
for(a=1;a<100;a+)
for(b=1;b<100;b++)
for(c=1;c<100;c++)
if(a+2*b+5*c==100)
{
s++;
printf("a=%2d,b=%2d,c=%2d",a,b,c);
if(s%3==0)
printf("\n");
}
} #include"stdio.h"
main()
{
int i,j,k;
for(i=1;i<=100;i++)
for(j=1;j<=34;j++)
for(k=1;k<=20;k++)
if(i+j*2+k*5==100)
printf("%d %d %d\n",i,j,k);
}
可以简化一下循环; #include <iostream.h>
void main()
{
int i,j,k;
for (i=1;i<100;i++)
for(j=1;j<100;j++)
for(k=1;k<100;k++)
if ((i+2*j+5*k)==100)
cout<<"一分的:"<<i<<" 二分的:"<<j<<" 五分的:"<<j<<endl;
} [quote]原帖由 [i]benben2301[/i] 于 2008-3-10 16:08 发表 [url=http://hackerxfiles.net/redirect.php?goto=findpost&pid=728885&ptid=98055][img]http://hackerxfiles.net/images/common/back.gif[/img][/url]
very easy
#include
void main()
{
int i,j,k;
for (i=1;i [/quote]
前面的c语句看的懂,后面COUNT之后一句看不懂了 顶虽然看不懂::12:: 楼主答案与题意不符
一:100分==1元
二:有三种币值:一分,二分,五分,而不是都是1分或1,2,3分三种
正解如下[code]#include <iostream.h>
#define N 100
void main()
{
int one,two,three;
int num=0,q=0;
cout<<"一分\t"<<"二分\t"<<"五分\t"<<endl;
for(one=0;one<=100;one++)
for(two=0;two<=50;two++)
for(three=0;three<=20;three++)
{
num=one+two*2+three*5;
if(num==N)
{
q++;
cout<<one<<"\t"<<two<<"\t"<<three<<endl;
}
}
cout<<"共有"<<q<<"种分法"<<endl;}[/code]
[[i] 本帖最后由 zoutommy 于 2008-7-22 19:49 编辑 [/i]] 113楼的,你的简化法我没看明白,而且三个变量初值应赋值0,而非1,改后为:[code]#include"stdio.h"
main()
{
int i,j,k,s=0;
for(i=0;i<=100;i++)
for(j=0;j<=50;j++)
for(k=0;k<=20;k++)
if(i+j*2+k*5==100)
{s++;printf("%d %d %d\n",i,j,k);
}
printf("共%d种",s);
}[/code]
[[i] 本帖最后由 zoutommy 于 2008-7-22 19:48 编辑 [/i]] 顶呀~~~~~~::09:: seeseseseseseses 我想看看答案可以吧? 4楼的方法可以直接算出来,可是时间复杂度有点大啊,有没有可以减少时间复杂度的算法?
我先看看楼主的答案如何。
