摘要:
debugging 写代码的时候...... 代码风格 唯一的要求: 自己能看懂 #define 的使用 下面会讲 工程代码 (不强求) 函数专注于自己处理的数据 每一个步骤分开, 别凝在一起 变量名 好区分 不易写错 细节问题 undefined behavior 忘记写返回值 ( 不开 -O2 阅读全文
摘要:
传送门 这道题题面很长(废话一堆), 但是总结就一句话题意:2^2^2^2……mod p 因为当 b > φ(p) 时,a ^ b ≡ a ^ (bmodφ(p) + φ(p))。所以我们可以递归地算这个式子,直到 p = 1。 即令f(p) = 2 ^ 2 ^ 2⋯ mod p,则有f(p) = 阅读全文
摘要:
pb_ds俗称平板电视(bushi)是GNU-C++自带的c++扩展库,实现了许多数据结构。 因为是扩展库要单独写 下面有三种主要的数据结构。 1.哈希表 头文件 两种定义方式 P.S:两种hash函数比map的效率高,且使用方法和map一样 2.堆 头文件: 与普通的优先队列用法一样 pb_ds库 阅读全文
摘要:
https://www.luogu.org/problemnew/show/P3868 这是一道中国剩余定理的板子题,所以直接写就好了(划死),好吧这道题良(du)心(liu)的出题人让这道题必须用快速乘(因为会爆long long) 要切记使得所有a[i] = (a[i] % b[i] + b[i 阅读全文
摘要:
https://www.lydsy.com/JudgeOnline/problem.php?id=3040 题目已经给出是最短路,所以我们可以用dijkstra(关于spfa它死了),但是看一眼这道题的数据范围,普通的dij肯定是会超时的。所以要优化(我不会优化所以直接借鉴了hzwer学长的代码)这 阅读全文
摘要:
https://www.luogu.org/problemnew/show/P1064 从题目描述中可以很清楚地看出这是一个背包问题, 并且只有两类物品:主件和附件。所以这是一个非树形有依赖的背包问题。先对每种主件的 附件的集合 进行一次 01背包处理,就可以先求出 对于每一种主件包括其附件的组合中 阅读全文
摘要:
传送门:https://www.luogu.org/problemnew/show/P2893 题目中的“原来的路的每一段海拔是A_i,修理后是B_i,花费|A_i – B_i|。我们要求修好的路是单调不升或者单调不降的。求最小花费。”第一眼看起来像上升子序列(显然不是),这是道线性dp的比较简单的 阅读全文
摘要:
传送门:https://www.luogu.org/problemnew/show/P2801 这道题刚看到的时候感觉就是线段树的两种操作嘛,维护一棵线段树就好了。然并卵我忘记线段树怎么写了。然后就想到打暴力水过数据点,就花了十来分钟打暴力,搞过了样例。但是。。。。最后得了0分,其他巨佬同样写了暴力 阅读全文
摘要:
题目大意 沙漠中有n 个绿洲(编号为1-n)和e 条连接绿洲的双向道路。每条道路都有一个长度d 和一个温度值r 。给定起点绿洲编号s 和终点绿洲编号t ,求出一条s 到t 的路径,使得这条路径上经过的所有道路的最高温度尽量小,如果有多条路径,选择总长度最短的那一条。 输入格式 输入包含多组数据。 每 阅读全文
摘要:
就是建一个树,然后从某根开始走,每走一条边就要消耗两边点权+边的边权。最后再加上一个根的点权 直接改变边权然后跑最小生成树就好了。 #include<cstdio> #include<iostream> #include<algorithm> #include<cmath> #include<que 阅读全文
摘要:
Input 第一行四个正整数N,M,p,q 第一行四个正整数N,M,p,q Output 一共输出N行,第i行表示第i个馒头的最终颜色(如果最终颜色是白色就输出0)。 一共输出N行,第i行表示第i个馒头的最终颜色(如果最终颜色是白色就输出0)。 Sample Input 4 3 2 4 Sample 阅读全文