/**
大意:给定一组x[],y[],z[] 确定有没有两个不同的x[i], x[j] 看是否存在一个ID使得
y[i]<=ID%x[i]<=z[i]
y[j]<=ID%x[j]<=z[j]
设ID%x[i] = a ID%x[j] = b
===〉ID+x[i]*x=a, ID+x[j]*y = b;
两式相减得 x[j]*y - x[i]*x = b-a;
若是有解 就是(b-a)%gcd(x[i],x[j]) == 0
就是看b-a的范围内是否有数是 gcd(x[i],x[j]) 的倍数
因为 y[j]<=b<=z[j] y[i]<=a<=z[i]
所以 y[j]-z[i]<=b-a<=z[j]-y[i] 欠缺; 还是思路不够,,做题太少。。
**/ #include <iostream>
#include <algorithm>
using namespace std;
long long x[],y[],z[]; long long gcd(long long a,long long b){
if(b==)
return a;
return gcd(b,a%b);
} bool check2(int d,int l,int r){
if(l%d==||r%d==)
return true;
if((r-l+)>=d)
return true;
int t1 = l/d;
int t2 = r/d;
if(t1!=t2)
return true;
else
return false;
} bool check(int i,int j){
if(y[i]>z[j]||y[j]>z[i]){
if(z[j]<y[i])
swap(i,j);
long long d = gcd(x[i],x[j]);
if(check2(d,y[j]-z[i],z[j]-y[i]))
return true;
else
return false;
}else
return true;
} int main()
{
int n;
while(cin>>n){
for(int i=;i<n;i++)
cin>>x[i]>>y[i]>>z[i];
bool flag = false;
for(int i=;i<n;i++){
for(int j=i+;j<n;j++){
if(check(i,j)){
flag = true;
break;
}
}
}
if(!flag){
cout<<"Can Take off"<<endl;
}else{
cout<<"Cannot Take off"<<endl;
}
}
return ;
}

2013 南京邀请赛 K题 yet another end of the world的更多相关文章

  1. hdu 4587 2013南京邀请赛B题/ / 求割点后连通分量数变形。

    题意:求一个无向图的,去掉两个不同的点后最多有几个连通分量. 思路:枚举每个点,假设去掉该点,然后对图求割点后连通分量数,更新最大的即可.算法相对简单,但是注意几个细节: 1:原图可能不连通. 2:有 ...

  2. 2013 ACM/ICPC南京邀请赛B题(求割点扩展)

    题目链接:http://icpc.njust.edu.cn/Contest/194/Problem/B B - TWO NODES 时间限制: 10000 MS 内存限制: 65535 KB 问题描述 ...

  3. 2013 南京邀请赛 A play the dice 求概率

    /** 大意:给定一个色子,有n个面,每一个面上有一个数字,在其中的m个面上有特殊的颜色,当掷出的色子出现这m个颜色之一时,可以再掷一次..求其最后的期望 思路:假设 期望为ans 4 ans = 1 ...

  4. 2013 南京邀请赛 C count the carries

    /** 大意: 给定区间(a,b), 将其转化为二进制 计算从a+(a+1)+(a+2)....+(a+b-1),一共有多少次进位 思路: 将(a,b)区间内的数,转化为二进制后,看其每一位一共有多少 ...

  5. 2018宁夏邀请赛K题Vertex Covers(高维前缀和 状压 折半

    https://vjudge.net/problem/Gym-102222K 题意:给定N点M边的无向图,每个点有点权.  点覆盖表示某个点集S{}覆盖了所有的边,其贡献是S中点权之积. 现在让你求所 ...

  6. 2013长沙网络赛H题Hypersphere (蛋疼的题目 神似邀请赛A题)

    Hypersphere Time Limit: 1 Second       Memory Limit: 32768 KB In the world of k-dimension, there's a ...

  7. HDU 4758 Walk Through Squares (2013南京网络赛1011题,AC自动机+DP)

    Walk Through Squares Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Oth ...

  8. HDU 4751 Divide Groups (2013南京网络赛1004题,判断二分图)

    Divide Groups Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tot ...

  9. HDU 4750 Count The Pairs (2013南京网络赛1003题,并查集)

    Count The Pairs Time Limit: 20000/10000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others ...

随机推荐

  1. 10个必备的移动UI设计资源站

    http://www.uisdc.com/10-necessary-mobile-ui-design-resources# 交互设计中如何增加趣味性.提升愉悦http://www.uisdc.com/ ...

  2. 用户向导页面实现左右滑动的ViewPager

    然后在一个博客,以前的博客ImageSwitcher实现用户向导,现在,随着ViewPager实现同样的功能.直接看代码: 布局文件activity_main.xml <RelativeLayo ...

  3. apache kafka系列之性能优化架构分析

    apache kafka中国社区QQ群:162272557 Apache kafka性能优化架构分析 应用程序优化:数据压缩 watermark/2/text/aHR0cDovL2Jsb2cuY3Nk ...

  4. 汉诺塔 python版

    汉诺塔问题:如果将n个盘子(由小到大)从a通过b,搬到c,搬运过程中不能出现小盘子在大盘子下面的情况. 思路分析:假设前要移动第100个盘子,分两步走,移动第99个:再移动第100个:而要移动第99个 ...

  5. ADO.NET详解----核心对象的使用

    一.Connection对象 指定某个具体数据源以及提供登陆方式及用户名与密码. Connection对象的主要成员: 1.ConnectionString属性:连接字符串,指定要操作的数据库以及登录 ...

  6. margin 属性的相关问题

    1.margin 的IE6 双边距问题 问题描述:浮动的块挨边框的时候会产生双倍的边距 解决方案: 1.增加display:inline; 2.去除float属性 2.margin 的重叠问题 CSS ...

  7. Android应用开发基础篇(12)-----Socket通信

    链接地址:http://www.cnblogs.com/lknlfy/archive/2012/03/03/2378669.html 一.概述 网络通信无论在手机还是其他设备上都应用得非常广泛,因此掌 ...

  8. Database SQL script automation management tools investigation

    Recently researched about database SQL scripts auto management tools, recorded the results here. Res ...

  9. JS 修改元素

    var ele; window.onload=function(){ ele=document.createElement('div'); ele.id='myEle1'; ele.style.bor ...

  10. 帝国cms7.0调用指定栏目,指定顺序排列

    [e:loop={"select * from {$dbtbpre}enewsclass where classid in (82,83,86,87,88,89,90,91,93) orde ...