zoukankan      html  css  js  c++  java
  • hdu 4768 Flyer (异或操作的应用)

    2013年长春网络赛1010题

    继巴斯博弈(30分钟)签到后,有一道必过题(一眼即有思路)。

    思路老早就有(40分钟):倒是直到3小时后才被A掉。期间各种换代码姿态!

    共享思路:

      unlucky student flag 如果存在,有且只有one。flyers为基数;

      其他student 为偶数。很容易想到以前做过的一道异或题。

    过程:

     (1)通过异或找unlucky。

     (2)如果找到,再通过分发 flyers的规律取余操作确定 flyers的个数;

    由于第二个条件出现了bug,但确信思路比对;所以各种换姿势,Wrang到想死,又各种找tricks。

    (期间自然也有在线管理员的ansers的误导)。直到最后让队友完全了解思路才找到bug,然后A掉。

    #include<stdio.h>
    int main()
    {
        int i,n;
        while(scanf("%d",&n)!=EOF)
        {
            __int64 ans=0;
            int a[21000],b[21000],c[21000];
            for(i=0; i<n; i++)
            {
                scanf("%d%d%d",&a[i],&b[i],&c[i]);
                int x=a[i];
                while(x<=b[i])
                {
                    ans=ans^((__int64)x);
                    x+=c[i];
                }
            }
            int js=0;
            if(ans)
            {
                for(i=0;i<n;i++)
                {
                    if(ans>=a[i]&&ans<=b[i]&&(ans-a[i])%c[i]==0)js++;
                    //ans>=a[i]&&(ans-a[i])%c[i]==0最初写这样。该死的小bug
                    //也怪自己改错的重心出了问题,以为是tricks。~~o(>_<)o ~~
                }
                printf("%I64d %d
    ",ans,js);
            }
            else printf("DC Qiang is unhappy.
    ");
        }
        return 0;
    }

      

  • 相关阅读:
    python+selenium框架
    django--form组件
    python +selenium上传文件
    python--UI---登录---验证码
    python+selenium button定位方法
    css-定位技术
    css-盒子模型
    css-元素分类
    序列化
    FileUploadController
  • 原文地址:https://www.cnblogs.com/XDJjy/p/3345273.html
Copyright © 2011-2022 走看看