标题:哪天返回
小明被不明势力劫持。后莫名其妙被扔到x星站再无问津。小明得知每天都有飞船飞往地球,但需要108元的船票,而他却身无分文。
他决定在x星战打工。好心的老板答应包食宿,第1天给他1元钱。 并且,以后的每一天都比前一天多2元钱,直到他有足够的钱买票。
请计算一下,小明在第几天就能凑够108元,返回地球。
#include<stdio.h>
int main()
{
int c=2,day=1,i=1;
while(i<=108)
{
i+=c;
c+=2;
day++;
}
printf("%d",day);
return 0;
}
标题:猴子分香蕉
5只猴子是好朋友,在海边的椰子树上睡着了。这期间,有商船把一大堆香蕉忘记在沙滩上离去。
第1只猴子醒来,把香蕉均分成5堆,还剩下1个,就吃掉并把自己的一份藏起来继续睡觉。
第2只猴子醒来,重新把香蕉均分成5堆,还剩下2个,就吃掉并把自己的一份藏起来继续睡觉。
第3只猴子醒来,重新把香蕉均分成5堆,还剩下3个,就吃掉并把自己的一份藏起来继续睡觉。
第4只猴子醒来,重新把香蕉均分成5堆,还剩下4个,就吃掉并把自己的一份藏起来继续睡觉。
第5只猴子醒来,重新把香蕉均分成5堆,哈哈,正好不剩! 请计算一开始最少有多少个香蕉
#include<stdio.h>
int main()
{
int i;
for(i=6;i<9999;i++)
{
if((i-1)%5!=0)continue;
int m=i;
m-=1; //吃掉一个
m=m/5*4;
if(m%5!=2)continue;
m-=2; //吃掉两个
m=m/5*4;
if(m%5!=3)continue;
m-=3; //吃掉三个
m=m/5*4;
if(m%5!=4)continue;
m-=4; //吃掉四个
m=m/5*4;
if(m==0||m%5!=0) continue;
printf("%d",i);
break;
}
return 0;
}
标题:第几个幸运数
到x星球旅行的游客都被发给一个整数,作为游客编号。 x星的国王有个怪癖,他只喜欢数字3,5和7。
国王规定,游客的编号如果只含有因子:3,5,7,就可以获得一份奖品。 我们来看前10个幸运数字是: 3 5 7 9 15 21 25 27
35 45 因而第11个幸运数字是:49 小明领到了一个幸运数字
59084709587505,他去领奖的时候,人家要求他准确地说出这是第几个幸运数字,否则领不到奖品。
请你帮小明计算一下,59084709587505是第几个幸运数字。
#include <stdio.h>
int main()
{
long long x,y,z,n=59084709587505;
int m=0;
for(x=1;x<=n;x=x*3)
for(y=1;x*y<=n;y=y*5)
for(z=1;x*y*z<=n;z=z*7)
m++;
printf("%d\n",m-1);
return 0;
}
/*找出n中所以满足条件的数字 用m来累计个数 因为1不满足所以要m-1*/
标题:稍小分数
回到小学---- 真分数:分子小于分母的分数 既约分数:分子分母互质,也就是说最大公约数是1 x星球数学城的入口验证方式是:
屏幕上显示一个真分数,需要你快速地找到一个比它小的既约分数,要求这个分数越大越好。 同时限定你的这个分数的分母不能超过100。
#include<stdio.h>
int gcd(int a, int b)
{
if(b==0) return a;
return gcd(b,a%b);
}
int main()
{
// 这是屏幕上显示的那个分数 a/b
int a = 7;
int b = 13;
int m,n;
int max_a = 0;
int max_b = 1;
for(n=100; n>1; n--){
for(m=n-1; m>=1; m--){
if(m*b<a*n && gcd(m,n)==1){
if(m*max_b>n*max_a){
max_a = m;
max_b = n;
break;
}
}
}
}
printf("%d/%d\n", max_a,max_b);
return 0;
}