29 条题解

  • 0
    @ 2006-10-19 19:12:50

    出题的大牛应该在题目上写"PASCAL使用者请勿入内"...

    眼睁睁看着用C的大牛增加AC数...

  • 0
    @ 2006-10-19 17:55:27

    鄙视出题人,描述和数据不一样

    数据里的for前面有两个空格,描述里只有一个

    但我这么做了还是格式错误,出题人极不严谨,这种题目本来就要把输出写得很规范!

    而且题目里要很清晰

  • 0
    @ 2006-10-19 16:37:45

    555

    我只会pascal

  • 0
    @ 2006-10-19 15:01:28

    我不学C, SO我看不懂,

    有PASCAL版的吗?

  • 0
    @ 2006-10-21 08:50:06

    IPSC2005

    顶g201516大牛!

  • 0
    @ 2006-10-19 14:12:23

    2005年某比赛题=.=||

  • 0
    @ 2006-10-19 18:12:12

    bai_chi

    555

    我只会pascal

    支持,这题让我们怎么做啊

  • -1
    @ 2016-10-27 18:21:30
    #include <stdio.h>
    
    int message[]=
    {80, 125, 111, 18, 59, 88, 88, 28, 65, 98, 119, 103, 101, 79, 107, 2, 16,
    92, 102, 123, 103, 84, 112, 78, 68, 98, 65, 37, 105, 85, 107, 13, 45, 9,
    104, 81, 21, 31, 55, 110, 78, 66, 66, 3, 77, 63, 16, 105, 15, 123, 16, 84,
    31, 96, 4, 82, 82, 122, 68, 115, 35, 73, 3, 108, 115, 83, 15, 19, 31, 99, 5,
    123, 24, 65, 36, 15, 75, 84, 4, 2, -1};
    
    char res[100];
    
    int lim=100000001;
    
    int valid(int x)
    {
      if (x>='A' && x<='Z') return 1;
      if (x==' ' || x=='.' || x==',' || x=='\'' || x=='?' || x=='!') return 1;
      return 0;
    }
    
    void mainloop(long long x)
    {
      int i;
      long long a, b, c;
      
      c=2;
      for (i=0; message[i]!=-1; i++)
      {
        a=4*i*i*i+6*i*i+4*i+1;
        while(a--) c=(c*x+1)%lim;
        b=(c/100)%100;
        res[i]=message[i]^b;
        if (!valid(res[i])) return;
        if (i==10)
        {
          res[i+1]=0;
          printf("Possible solution?: %lld %s\n", x, res);
        }
      }
      res[i]=0;
      printf("Solution: %lld %s\n", x, res);
    }
    
    int main()
    {
      int x;
      for (x=100000000; x<=200000000; x++) mainloop(x);
      return 0;
    }
    
    

信息

ID
1276
难度
9
分类
模拟 点击显示
标签
(无)
递交数
373
已通过
6
通过率
2%
被复制
3
上传者