zoukankan      html  css  js  c++  java
  • 1069-生日聚会

    描述

     

           今天是JacmY生日,他请大家吃饭,就这样,一行N个人来到了餐馆,大家吃吃喝喝,有说有笑,气氛甚欢,这时突然有人提议大家玩一个游戏,听罢规则后,就开始了游戏。

        游戏规则是这样的,吃饭的N个人围坐在桌子旁,JacmY是1号,沿着顺时针方向开始编号,2、3……N,然后由JacmY随机说一个数K(1 <= K <= N),从JacmY开始顺时针报数,“1,2……”,当有人报到K时,这个人从他的位置起来,先坐到了其他桌子,然后由下一个人重新从1开始报……就这样循环下去,每当有人报到K,这个人就离开了桌子,直到剩下这最后一个人,他非常倒霉的要接受大家的惩罚,就是罚酒一杯。JacmY有些郁闷了,K是由自己说的,万一说不好让自己受惩罚了,这个就有点不爽了,所以JacmY想请你帮忙找出哪些K会让他受罚,这样以来,JacmY就不用担心会喝太多酒了!

    输入

     

    第一行一个整数T代表样例的组数

    下面T行,每行一个整数N, 1 <= N<= 100;N如题目所述。

    输出

     

           对于每组数据,第一行输出一个整数M,表示有M个这样的K会让JacmY受罚,接下来一行是M个整数,代表K分别取的哪些值,这些数字间用空格隔开。

    样例输入

    3

    5

    8

    10

    样例输出

    1

    4

    2

    2 6

    1

    8

    #include<stdio.h>
    int main()
    {
    
         int n,t,i,k;
         scanf("%d",&t);
         for(int ii=0;ii<t;ii++)
         {
             scanf("%d",&n);
             int j=0,count=0,s=0;
             int a[21]={0};
             for(k=1;k<=n;k++)
             {
                 for(i=1;i<=n;i++)
                 {
                     s=(s+k)%i;
                 }
                 
                 if((s+1)==1) 
                 {
                     count++;
                     a[j]=k;
                     j++;
                 }
             }
             printf("%d
    ",count);
             if(count==0) continue;
             else{
             for(i=0;i<j-1;i++) printf("%d ",a[i]);
             printf("%d
    ",a[j-1]);
             }
         }
         return 0;
    }
    

      

  • 相关阅读:
    关于背景图片的处理
    node ,npm和nvm 版本的管理
    验证码倒计时
    css效果文字多了就...
    git 的入门使用到团队协作
    ajax模拟获取json
    angularjs入门(二)
    重新学习angularjs--第一篇(入门)
    html的结构-厂子型的布局
    分享html5的一个拖拽手法
  • 原文地址:https://www.cnblogs.com/Rosanna/p/3436832.html
Copyright © 2011-2022 走看看