中易网

判断是否幸运数 c/c++ 求解答算法

答案:2  悬赏:80  
解决时间 2021-03-07 00:38
输入一个无符号整数,判断该数是否为幸运数。
注:从自然数序列:

 1,2,3,4,5,6,7,8,9,10,…中的第2项开始,隔1个取走1个,得序列:

 1,3,5,7,9,11,13,15,… 
再从其第3项开始,隔2个取走1个,得序列:

 1,3,7,9,13,15,19,… 
按以上规律不断继续下去,永远取不走的数称幸运数。

Input
有多组数据,每组数据占一行,为无符号整数n(n≤10000),输入最后一行是一个0,表示输入结束并且不需要处理。
Output
判断n是否为幸运数。若是,则输出:Yes,it is.否则,输出: No it isn't.
题目链接:http://acm.hunnu.edu.cn/online/?action=problem&type=show&id=10096&courseid=0
Time Limit: 1000ms,
最佳答案
#include "stdio.h"
bool fun(unsigned int *d,unsigned int n,int start)
{
int j,i,k;
if(d[n-1]==10001) return false;
if(start {
i=0;j=0;
while(i {
while(d[i+j]==10001) j++;
i++;
}
for(k=i+j-1;k {
if(k==n) return false;
d[k]=10001;
i=0;j=0;
while(i {
while(d[i+j]==10001) j++;
i++;
}
}
return fun(d,n,start+1);
}
else
{
return true;
}
}
int main()
{
unsigned int n,d[10000];
printf("输入无符号整数n(n≤10000:");
scanf("%d",&n);
for(int i=0;i d[i]=i+1;
if(fun(d,n,2))
printf("Yes,it is.");
else
printf("No it isn't. ");
}
全部回答
也许是的。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
最近天天都在打彩虹城 有会玩的吗???
3月去西安市旅游要注意什么?需要带点什么?
花中四君子是哪四种花按4季排
用重结晶提纯苯甲酸为什么过滤前加水
金龙居在哪里啊,我有事要去这个地方
内涵段子大概有多少巨友
内分泌失调应该在月经前检查好还是月经后呢
长沙装修网站上介绍的公司性价比高么?
这一期 陈翔六点半陈奕迅 背景音乐歌名是什么
求陪你到最后百度云盘资源,谢谢
无限极(中国)旗舰店地址在什么地方,想过去办
贴吧里有玩DNF的吗
穿越西元3000后全部会有几话
有什么办法可以让不是小米的手机使用小米的小
急求一首用刘强爱乔蓉的藏头诗 谢谢了
推荐资讯
描写熊的英语作文
南京统宝光电待遇怎么样?厂里面是不是很乱呀
我想买一台五千的游戏本,大学是学计算机的,
推荐几部好看的日剧,主角好看点的,颜值控。
邮政平信只能丢?
你好 我想请问一下盐城市亭湖区派出所的电话
局域网的,我共享个文件夹,指定特定一台可以
宜君县公安局宜君收费站治安联防办公室地址在
怎么查询酒驾后的处罚
北部湾东部是什么地方
雅逸家私城在什么地方啊,我要过去处理事情
男朋友很在乎是不是处,咋办
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?