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

题目大意:每组数据有n行输入,每行有三个数A、B、C,A<=B且小于2^32,从A到B每隔C个数发一份传单,最后所有发过传单的数中每一个数发了奇数次传单的是倒霉的那个人,倒霉的人最多只有1个。如果存在这个人输出他的序号和传单数,否则输出“DC Qiang is unhappy”

Sample Input
2
1 10 1
2 10 1
4
5 20 7
6 14 3
5 9 1
7 21 12
 
Sample Output
1 1
8 1

分析:直接模拟会超时,二分的奇妙运用

代码如下:

 # include<iostream>
# include<cstdio>
# include<algorithm>
# define LL __int64
# define maxn
using namespace std; LL a[maxn],b[maxn],c[maxn];
int n; int judge(LL l,LL r)
{
LL ret=;
for(int i=; i<=n; i++)
{
if(l>b[i] || r<a[i]) continue;
int k=a[i];
int j=min(r,b[i]);
if(j<k) continue;
ret += max(0LL, (j-k)/c[i]+);
}
if(ret% == )
return ;
return ;
} int main()
{
while(scanf("%I64d",&n)!=EOF)
{
for(int i=; i<=n; i++)
scanf("%I64d%I64d%I64d",&a[i],&b[i],&c[i]);
LL l=;
LL r=;  //可用(__int64)1 << 32 + 1代替,必须加 __int64
LL tmp = -;
while(l<=r)
{
LL mid=(l+r)/;
if(judge(,mid))
{
r = mid - ;
tmp = mid;
}
else
l= mid+;
}
if(tmp==-)
printf("DC Qiang is unhappy.\n");
else
{
int ans = ;
for(int i=; i<=n; i++)
if(a[i]<=tmp && b[i]>=tmp &&(tmp-a[i])%c[i]==)
ans ++;
printf("%I64d %d\n",tmp,ans);
}
}
return ;
}

HDU 4768 Flyer(二分法)的更多相关文章

  1. 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 ...

  2. HDU 4768 Flyer(二分)

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

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

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

  4. hdu 4768 Flyer 二分

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

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

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

  6. HDU 4768: Flyer

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

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

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

  8. hdu 2289 Cup (二分法)

    http://acm.hdu.edu.cn/showproblem.php?pid=2289 二分法解题. 这个题很恶心...一开始测试样例都不能过,这个π一开始取3.1415926结果是99.999 ...

  9. hdu 4768 异或运算

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

随机推荐

  1. 关于 javascript:void(0) 的使用

    在 Wep App 中,我们经常需要在 JavaScript 中处理链接的点击.因此,我们希望用户点击 <a> 元素时阻止它的默认行为.此时我们可以用很多不同的方法来处理.例如: < ...

  2. sql存储过程exec执行字符串select 的区别

    USE [GuangHong]GO/****** Object: StoredProcedure [dbo].[st_MES_SelInspctDetail] Script Date: 11/23/2 ...

  3. PowerDesigner 业务处理模型( BPM )

    PowerDesigner 业务处理模型( BPM ) 说明 properties语言文档xmlvalidation数据库   目录(?)[+]   一.     BPM 简介 业务处理模型(Busi ...

  4. sql2008_x64 读取excel

    sql2008_x64 读取excel 下载64bit 版的AccessDatabaseEngine_x64:http://www.microsoft.com/en-us/download/detai ...

  5. eclipse代码左虚线对齐设置

    前言 : 前阵子看到同事的eclipse左边有虚线对齐.有点好奇~刚开始以为是装了神马插件, 于是百度了下, 貌似没有找着. 一怒之下,逗比了半个小时,终于探索出来了~~ 设置如下 : 点击confi ...

  6. MyEclipse设置默认的目光格式

    首先,选择菜单 windows-->preference Java-->Code Style-->Code Templates code-->new Java files 然后 ...

  7. iOS开发——高级技术&广告功能的实现

    广告功能的实现 iPhone/iPad的程序,即使是Free的版本,也可以通过广告给我们带来收入.前提是你的程序足够吸引人,有足够的下载量.这里,我将介绍一下程序中集成广告的方法.主要有两种广告iAd ...

  8. WebGL on iOS8 最终等到了这一天

    WWDC2014刚结束,这次的大会是名符事实上的开发人员大会.更贴切的应该说的确是一次软件开发人员的大会.对于OSX和iOS的很多其它功能特性让人兴奋.Swift新语言促成了如上图片 但我更感兴趣的是 ...

  9. percona-toolkit -1

    http://blog.chinaunix.net/uid/16844903/cid-165634-list-1.html

  10. 面试题总结之Linux/Shell

    Linux Linux cshrc文件作用 Linux如何起进程/查看进程/杀进程 Linux 文件755 代表什么权限 Linux辅助线程 Linux进程间通信方法 pipeline,msgq... ...