$des$

https://loj.ac/problem/10215

$sol$

exgcd检查

$code$

#include <iostream>
#include <cstdlib>
#include <algorithm>
#include <cstring>
#include <cstdio> using namespace std; #define gc getchar()
inline int read() {
int x = ; char c = gc;
while(c < '' || c > '') c = gc;
while(c >= '' && c <= '') x = x * + c - '', c = gc;
return x;
} #define LL long long const int N = ; LL C[N], P[N], L[N];
int n;
int M = 1e6; LL Exgcd(LL a, LL b, LL &x, LL &y) {
if(b == ) {
x = , y = ; return a;
}
LL gg = Exgcd(b, a % b, x, y);
LL tmp = x;
x = y, y = tmp - a / b * y;
return gg;
} bool Solve(LL k) {
for(int i = ; i <= n; i ++) {
for(int j = i + ; j <= n; j ++) {
LL c1 = C[i], c2 = C[j], p1 = P[i], p2 = P[j], x, y;
LL b = p1 - p2, d = c2 - c1;
if(b < ) b = -b, d = -d;
LL g = Exgcd(b, k, x, y);
if(d % g) continue;
x *= (d / g);
LL r = k / g;
while(x < ) x += r;
x %= r;
if(x <= min(L[i], L[j])) return ;
}
}
return ;
} int main() {
n = read();
LL Max = ;
for(int i = ; i <= n; i ++)
C[i] = read(), P[i] = read(), L[i] = read(), Max = max(Max, C[i]);
int a;
for(a = Max; a <= M; a ++) {
if(Solve(1ll * a)) {
cout << a; return ;
}
} return ;
}

59: loj #10215的更多相关文章

  1. LOJ.6060.[2017山东一轮集训Day1/SDWC2018Day1]Set(线性基)

    LOJ BZOJ 明明做过一道(最初思路)比较类似的题啊,怎么还是一点思路没有. 记所有元素的异或和为\(s\),那么\(x_1+x_2=x_1+x_1\ ^{\wedge}s\). \(s\)是确定 ...

  2. LOJ 3119: 洛谷 P5400: 「CTS2019 | CTSC2019」随机立方体

    题目传送门:LOJ #3119. 题意简述: 题目说的很清楚了. 题解: 记恰好有 \(i\) 个极大的数的方案数为 \(\mathrm{cnt}[i]\),则答案为 \(\displaystyle\ ...

  3. Loj#143-[模板]质数判定【Miller-Rabin】

    正题 题目链接:https://loj.ac/p/143 题目大意 给出一个数\(p\),让你判定是否为质数. 解题思路 \(Miller-Rabin\)是一种基于费马小定理和二次探测定理的具有较高正 ...

  4. 编写高质量代码:改善Java程序的151个建议(第4章:字符串___建议56~59)

    建议56:自由选择字符串拼接方法 对一个字符串拼接有三种方法:加号.concat方法及StringBuilder(或StringBuffer ,由于StringBuffer的方法与StringBuil ...

  5. C#得到某月最后一天晚上23:59:59和某月第一天00:00:00

    项目需求: 某学校订单截止操作时间的上一个月最后一天晚上23:59:59 为止所有支付的订单统计: 代码: /// <summary> /// 通过学校和截止时间得到订单 /// < ...

  6. 重新想象 Windows 8 Store Apps (59) - 锁屏

    [源码下载] 重新想象 Windows 8 Store Apps (59) - 锁屏 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 锁屏 登录锁屏,获取当前程序的锁 ...

  7. Loj 1003–Drunk(拓扑排序)

    1003 - Drunk PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 MB One of my fr ...

  8. svn://59.46.115.123:13690/IOS/trunk/02.DevelopLib/04.Coding/uuridesharing

    svn://59.46.115.123:13690/IOS/trunk/02.DevelopLib/04.Coding/uuridesharing

  9. 59. 总结篇:数组中N(n=1,2,3)个只出现一次的数字[find N numbers which appear only once in array]

    [本文链接] http://www.cnblogs.com/hellogiser/p/find-n-numbers-which-appear-only-once-in-array.html [题目] ...

随机推荐

  1. -Shell 命令行工具 Cmder Babun Zsh MD

    目录 目录 Cmder:window 下增强型的 cmd + bash 简介 配置 解决中文乱码问题 添加到右键菜单 添加至环境变量 修改命令提示符号 自定义aliases Readme.md 设置c ...

  2. Azkaban 3.x 编译及部署

    一.Azkaban 源码编译 1.1 下载并解压 Azkaban 在 3.0 版本之后就不提供对应的安装包,需要自己下载源码进行编译. 下载所需版本的源码,Azkaban 的源码托管在 GitHub ...

  3. Kafka跨集群迁移方案MirrorMaker原理、使用以及性能调优实践

    序言Kakfa MirrorMaker是Kafka 官方提供的跨数据中心的流数据同步方案.其实现原理,其实就是通过从Source Cluster消费消息然后将消息生产到Target Cluster,即 ...

  4. AD常用快捷键

    元器件翻转 : 空格 按住shift拖动元器件实现自动编号 取消布线 : 工具(Tools)取消布线(Un_Route)全部(AII) 栅格变为点阵 : 按ctrl+G——打开cartesian Gr ...

  5. asp.net core 系列之允许跨域访问2之测试跨域(Enable Cross-Origin Requests:CORS)

    这一节主要讲如何测试跨域问题 你可以直接在官网下载示例代码,也可以自己写,我这里直接使用官网样例进行演示 样例代码下载: Cors 一.提供服务方,这里使用的是API 1.创建一个API项目.或者直接 ...

  6. Java自学-数字与字符串 字符

    Java中的字符 示例 1 : 保存一个字符的时候使用char package character; public class TestChar { public static void main(S ...

  7. java手写多级缓存

    多级缓存实现类,时间有限,该类未抽取接口,目前只支持两级缓存:JVM缓存(实现 请查看上一篇:java 手写JVM高性能缓存).redis缓存(在spring 的 redisTemplate 基础实现 ...

  8. 【转载】C#中ArrayList集合类和List集合类的比较

    List集合类和ArrayList集合类都是C#语言中用于存储集合数据的集合类,两者都可灵活的插入.删除以及访问元素等等.但List集合和ArrayList集合的差别还是挺大的,首先List集合类是泛 ...

  9. vue动态子组件的实现方式

    让多个组件使用同一个挂载点,并动态切换,这就是动态组件. 通过使用保留的 <component>元素,动态地绑定到它的 is 特性,可以实现动态组件. 方式一:局部注册所需组件 <d ...

  10. 安装部署Spark 1.x Standalone模式集群

    Configuration    spark-env.sh        HADOOP_CONF_DIR=/opt/data02/hadoop-2.6.0-cdh5.4.0/etc/hadoop   ...