Description Sheng bill有着惊人的心算能力,甚至能用大脑计算出两个巨大的数的GCD(最大公约 数)!因此他经常和别人比赛计算GCD.有一天Sheng bill很嚣张地找到了你,并要求和你比 赛,但是输给Sheng bill岂不是很丢脸!所以你决定写一个程序来教训他. Input 共两行: 第一行:一个数A. 第二行:一个数B. Output 一行,表示A和B的最大公约数. Sample 输入样例#1: 12 54 输出样例#1: 6 Hints 对于20%的数据,0 < A…
这道题直接写了我两个多小时-- 主要是写高精度的时候还存在着一些小毛病,调了很久 在输入这一块卡了很久. 然后注意这里用while的形式写,不然会炸 最后即使我已经是用的万进制了,但是交上去还是有两个点超时 然后就开始漫长的改进,一直过不了那两个点. 然后突然发现,貌似这道题没有涉及到乘法. 那不就可以直接开10的九次方为一位了(10的9次方是int的最大数量级) 我交上去之后就AC了,全部测试点交上去总和4.6秒 然后原来我一个数开的是2500这么大,因为题目给的10000位,之前用万进制除以…
题意简述 求两个整数a,b的最大公约数0 < a , b ≤ 10 ^ 10000. 题解思路 如果 a % 2 == 0 && b % 2 == 0 gcd(a,b) = gcd(a / 2, b / 2) * 2 如果 a % 2 == 0 && b % 2 != 0 gcd(a,b) = gcd(a / 2, b); 如果 a % 2 != 0 && b % 2 == 0 gcd(a,b) = gcd(a, b / 2); 如果 a % 2 !=…
[SDOI2009]HH的项链 题目背景 无 题目描述 HH 有一串由各种漂亮的贝壳组成的项链.HH 相信不同的贝壳会带来好运,所以每次散步完后,他都会随意取出一段贝壳,思考它们所表达的含义.HH 不断地收集新的贝壳,因此,他的项链变得越来越长.有一天,他突然提出了一个问题:某一段贝壳中,包含了多少种不同的贝壳?这个问题很难回答……因为项链实在是太长了.于是,他只好求助睿智的你,来解决这个问题. 输入输出格式 输入格式: 第一行:一个整数N,表示项链的长度. 第二行:N 个整数,表示依次表示项链…
洛谷的题目实在是裹脚布 还编的像童话 这题要 "使得获得奖赏最多的大臣,所获奖赏尽可能的少." 看了半天都觉得不像人话 总算理解后 简单说题目的意思就是 根据既定的运算规则 如何排序能让数值最小(可以直接看题解 下面的题目真的不想多看) 因为涉及高精 就用python练练手 也是因为python做高精简便才学的python 题目描述 恰逢 HH国国庆,国王邀请nn 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这…
BZOJ原题链接 洛谷原题链接 显然最长公共路径是最短路上的一条链. 我们可以把最短路经过的边看成有向边,那么组成的图就是一张\(DAG\),这样题目要求的即是两张\(DAG\)重合部分中的最长链. 重合部分中的最长链可能是同向,可能是反向的,但不可能由反向边和同向边组成,否则就不是\(DAG\)了. 所以我们分别只保留重合部分的同向边.反向边,跑两次拓扑排序求最长链,在两者中取\(\max\)即可. #include<cstdio> #include<cstring> #incl…
BZOJ原题链接 洛谷原题链接 又是扫描线,题解可看大佬的博客(太懒了不想打) #include<cstdio> #include<algorithm> using namespace std; const int N = 1e5 + 10; const long long mod = 2147483648LL; struct dd { int x, y; }; dd a[N]; int ls_x[N], ls_y[N], sx[N], sy[N], S[N], C[N][12],…
BZOJ原题链接 洛谷原题链接 完全不会呀.. 写了这题才知道\(SG\)函数原来也能打表找规律... 题解请看大佬的博客 #include<cstdio> using namespace std; inline int re() { int x = 0; char c = getchar(); bool p = 0; for (; c < '0' || c > '9'; c = getchar()) p |= c == '-'; for (; c >= '0' &&…
BZOJ原题链接 洛谷原题链接 注意到\(B[i]\)很小,考虑状压\(DP\). 设\(f[i][j][k]\)表示前\(i - 1\)个人已经拿到菜,第\(i\)个人及其后面\(7\)个人是否拿到菜的状态为\(j\),上一个拿到菜的人的编号为\(i + k,-8\leqslant k \leqslant 7\)时所用的最短时间. 然后讨论状态的转移. \(j \& 1\)为真 说明第\(i\)个人已经拿到菜,可以直接转移至\(i + 1\),即\[f[i + 1][j >> 1][…
看这题网上居然还没人写blog,怕是都去看洛谷自带的了-- 你才是字符串!你全家都是字符串!这题跟字符串没多大关系,只是出题人lxl想要吐槽某中学而已--... 其实这题说白了就是问区间里出现最多的数出现了多少次,上去就莫队就行-- 不过要注意离散化. 虽然lxl很sxbk,不过能想到这些题目,把题意悄悄的隐藏起来的大佬,可见其水平之高-- 在洛谷主站不开O2只有50分,有点吃O2的buff-- 辣鸡JSOI不能开O2真是差评啊. #include<bits/stdc++.h> #define…