zoukankan      html  css  js  c++  java
  • 开灯问题 分类: 算法入门 算法 2014-10-14 14:43 90人阅读 评论(0) 收藏

    开灯问题

    时间限制:3000 ms  |  内存限制:65535 KB
    难度:1
    描述

    有n盏灯,编号为1~n,第1个人把所有灯打开,第2个人按下所有编号为2 的倍数的开关(这些灯将被关掉),第3 个人按下所有编号为3的倍数的开关(其中关掉的灯将被打开,开着的灯将被关闭),依此类推。一共有k个人,问最后有哪些灯开着?输入:n和k,输出开着的灯编号。k≤n≤1000

    输入
    输入一组数据:n和k
    输出
    输出开着的灯编号
    样例输入
    7 3
    样例输出
    1 5 6 7


    #include<stdio.h>
    #include<string.h>
    
    bool light[10000];
    int main(){
    	int n,k,i,j;
    	scanf("%d %d",&n,&k);
    	for(i=2;i<=k;i++)
    	{
    		for(j=2;j<=n;j++)
    		{
    			if(j%i==0) light[j]= !light[j];
    		}
    	}
    	printf("1");
    	for(i=2;i<=n;i++)
    	{
    		if(light[i] == 0) printf(" %d",i);
    	}
    }


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    jQuery ajax传多个参数
    PHP 上传图片和安全处理
    PHP CI框架email类发送邮件
    2016-4-7
    jquery 轮播图
    CI控制器的继承问题
    2016-4-1
    2016-3-31 总结
    php内置函数call_user_func()
    discuz-目录
  • 原文地址:https://www.cnblogs.com/learnordie/p/4657004.html
Copyright © 2011-2022 走看看