【题目描述】
有n盏灯,编号为1~n,分别由相应的n个开关控制。开始时全部开关朝上(朝上为开,灯亮),然后进行以下操作:编号凡是1的倍数的灯反方向拨一次开关;是2的倍数的灯再反方向拨一次开关;是3的倍数的灯又反方向拨一次开关,……,直到是n的倍数的灯又反方向拨一次开关。
【输入】
仅一行。一个整数n(1≤n≤100),代表灯的数量。
【输出】
有两行。第1行是熄灭状态的灯的数量;第2行是最后为熄灭状态的灯的编号(每个数据以4列的域宽显示)。
【样例输入】
100
【样例输出】
10
1 4 9 16 25 36 49 64 81 100
#include<stdio.h> int main() { int n,i,j,sum=0; scanf("%d",&n); int a[n+1]; for(i=0;i<n+1;i++) a[i]=0; for(i=1;i<=n;i++) for(j=1;j<=n;j++) if(j%i==0) a[j]++; for(i=1;i<=n;i++) if(a[i]%2!=0) sum++; printf("%d\n",sum); for(i=1;i<=n;i++) if(a[i]%2!=0) printf("%4d",i); return 0; }
原文地址:http://www.cnblogs.com/xrj1229/p/16882313.html
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,请务用于商业用途!
3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员!
8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载
声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性