题目:

Flyer

原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=4768

分析:二分。只需要注意到最多只有一个为奇数,则可以首先求出学生获得的总的传单数,为奇数时,二分找到答案。

  1. #include<cstdio>
  2. #include<iostream>
  3. #include<cstring>
  4. #include<cmath>
  5. #include<algorithm>
  6. using namespace std;
  7. #define LL long long
  8. #define maxn 20005
  9. struct N
  10. {
  11. LL now,lim,add;
  12. }p[maxn];
  13. int n;
  14. int main()
  15. {
  16. while(scanf("%d",&n)!=EOF)
  17. {
  18. LL l=99999999999LL,r=,sum=;
  19. for(int i=;i<n;i++)
  20. {
  21. scanf("%I64d%I64d%I64d",&p[i].now,&p[i].lim,&p[i].add);
  22. l=min(l,p[i].now);r=max(r,p[i].lim);
  23. sum+=(p[i].lim-p[i].now)/p[i].add+;
  24. }
  25. LL sum1,sum2,temp1,temp2,pos;
  26. if(sum&)
  27. {
  28. while(l<r)
  29. {
  30. LL m=(l+r)>>;
  31. sum1=;sum2=;
  32. for(int i=;i<n;i++)
  33. {
  34. temp1=min(m,p[i].lim);
  35. temp2=min(r,p[i].lim);
  36. if(temp1>=p[i].now)
  37. sum1+=(temp1-p[i].now)/p[i].add+;
  38. if(temp2>=p[i].now)
  39. sum2+=(temp2-p[i].now)/p[i].add+;
  40. }
  41. sum2-=sum1;
  42. if(sum1&)r=m;
  43. else l=m+;
  44. if(l==r)
  45. {
  46. pos=l;
  47. break;
  48. }
  49. }
  50. sum1=;
  51. for(int i=;i<n;i++)
  52. {
  53. if((pos<=p[i].lim)&&(pos>=p[i].now)&&(((pos-p[i].now)%p[i].add)==))
  54. sum1++;
  55. }
  56. printf("%I64d %I64d\n",pos,sum1);
  57. }
  58. else printf("DC Qiang is unhappy.\n");
  59. }
  60. return ;
  61. }

HDU--4768的更多相关文章

  1. HDU 4768 Flyer(二分法)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4768 题目大意:每组数据有n行输入,每行有三个数A.B.C,A<=B且小于2^32,从A到B每隔 ...

  2. 2013长春网赛1010 hdu 4768 Flyer

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4768 题意:有n个社团发传单,每个社团发给编号为A_i, A_i+C_i,A_i+2*C_i,…A_i ...

  3. hdu 4768 异或运算

    http://acm.hdu.edu.cn/showproblem.php?pid=4768 貌似非常多人是用的二分 可是更好的做法貌似还是异或 对于第k个人.假设他接到偶数个传单.那么异或的结果还是 ...

  4. HDU 4768 Flyer(二分)

    题目链接: 传送门 Flyer Time Limit: 1000MS     Memory Limit: 32768 K Description The new semester begins! Di ...

  5. HDU 4768 (二分区间---涨姿势)

    题意:告诉n组A,B,C,按照A + k * C生成等差数列,问这n组数列中哪个数字出现了奇数次以及出现了几次,题目保证最多只会出现一个这种数字. 分析:读完题并没有思路,后来知道是二分区间,枚举是哪 ...

  6. hdu 4768 Flyer 二分

    思路:由于最多只有一个是奇数,所以二分枚举这个点,每次判断这个点的左边区间段所有点的和作为 二分的依据. 代码如下: #include<iostream> #include<cstd ...

  7. HDU 4768 Flyer【二分】||【异或】

    <题目链接> <转载于  >>> > 题目链接: n个社团派发传单,有a,b,c三个参数,派发的规则是,派发给序号为a,a+c....a+k*c,序号要求是小 ...

  8. HDU 4768 Flyer (2013长春网络赛1010题,二分)

    Flyer Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  9. HDU 4768: Flyer

    题意: 有N个社团,每个社团三个属性A,B,C,表示会向编号A+k*C的同学发传单(k=0,1,2...  && A+k*C <= B).题目保证最多有一个人收到的传单数是奇数. ...

  10. hdu 4768 Flyer (异或操作的应用)

    2013年长春网络赛1010题 继巴斯博弈(30分钟)签到后,有一道必过题(一眼即有思路). 思路老早就有(40分钟):倒是直到3小时后才被A掉.期间各种换代码姿态! 共享思路: unlucky st ...

随机推荐

  1. nodejs加载模块心得,mongoose的继承,schematype的mixd介绍

    1. require("xxx")可以是原生模块, 也可以是根目录“/node_modules”下的某个模块 2. 多个模块的package.json使用同一个相同模块的时候,将改 ...

  2. which命令详解

    基础命令学习目录首页 原文链接:https://www.cnblogs.com/jkin/p/10289085.html Linux which命令用于查找文件. which指令会在环境变量$PATH ...

  3. Buaaclubs的NABC与发布

    NEED: 本项目主要目的是实现一个社团学生公共平台,平台的宗旨是为学生提供信息,为社团提供服务,在社团和学生之间建立联系.经过调查,我们发现了用户的以下需求: 需求一:社团发布信息,同学获知信息 这 ...

  4. 【Alpha】Task分配与计划发布

     团队项目链接 以上大概是我们的任务分配,根据目前的预计时间来看,到α版本项目稳定下来至少需要440小时的开发时间才能完成. 项目最大的问题点和难点在于其数据量非常之大,计算模块要求非常之多,想象一下 ...

  5. Task 6.2站立会议一

    今天大家把这两天查的资料都拿出来整合到了一起,并仔细分析了其中的联系和区别. 因为大家每个人的思路都不一样,有各种各样的想法和不同的意见,所以最终统一意见是很难的一个过程.开始大家认我们可以做一个单独 ...

  6. 作业一 031502140 博客地址yeze651521

    大一 上学期一开始对于这门课程是懵懵懂懂的,基本不知道自己会不会能够学好,经过了一个学期的努力和老师的教导得到了许多有益的地方,使得我在这门课程的学习上有了大概的掌握,一个学期的学习给予了我很大的能力 ...

  7. alpha阶段总结 (第一阶段冲刺成果)

    首次接触手机APP的制作,虽然很多都不懂,但是在网上查阅相关知识和询问同学的帮助下,我们团队总算对此有相当的了解,但是因为时间问题,首次冲刺的成果不大,我们相信在下一次的冲刺中会给出更好的效果出来. ...

  8. Parallel学习

    Parallel给cpu的核有关系,在Parallel中,写入需要并行执行的方法,比如:方法1需要3秒:方法2需要6秒:方法3需要9秒: 并行情况下,加上任务分配,上下文切换需要1秒,执行方法总耗时只 ...

  9. jsp 页面和 jsp标记

    一个jsp页面可由5种元素组成 html标记 变量和方法的声明 java程序片 java表达式 <%!变量和方法的声明%> 被声明的方法和变量在整个jsp页面都可以访问,为全局变量 当多个 ...

  10. JabRef学习笔记(一)

    JabRef简介 JabRef is an open source bibliography reference manager. The native file format used by Jab ...