点亮灯泡问题

来源:互联网 发布:网络vip服务器 编辑:程序博客网 时间:2024/04/28 16:28
//deng pao
#include<stdio.h>
void main(){
    int i=1,j,a[65535]={0},n,b[65535]={0};
    scanf("%d",&n);
    for(i=1;i<=n;i++)
        b[i]=i;
    for(i=1;i<=n;i++)
        for(j=0;j<n;)
        {    
            j=i+j;
            a[j]++;
        }
    for(i=1;i<=n;i++)
        if(a[i]%2==1)
            printf("%d",b[i]);
}

输入100,结果是:1,4,9,16,25,36,49,64,81,100

其实可以发现亮着的灯是自然数的平方

0 0