ACM竞赛(C++)
我也不算是很厉害的大佬。只是希望大家能来共同学习!
猫的玖月
果然犹豫就会败北,果断等于白给!
展开
-
割绳子问题(二分)
题目描述有 N 条绳子,它们的长度分别为 L_iLi 。如果从它们中切割出 K 条长度相同的绳子,这 KK 条绳子每条最长能有多长?答案保留到小数点后 2 位(直接舍掉 2 位后的小数)。输入格式第一行两个整数 N 和 K,接下来 N 行,描述了每条绳子的长度 L_iLi 。输出格式切割后每条绳子的最大长度。答案与标准答案误差不超过 0.010.01 或者相对误差不超过 ...原创 2020-04-16 21:41:59 · 1712 阅读 · 0 评论 -
钟面角
钟面角公式推导:T(hour) = 12h; T(minute) = 60min; T(second) = 60s;现在时间为: H 时 (M + S / 60)分;令 x = H, y = M + S / 60;时针角:(x + y / 60)/ 12 * 360 = 30x + 0.5y;*分针角: y / 60 * 360 = 6y;if(时针角 <= 分针角), 6y - ...原创 2020-04-05 12:08:11 · 1272 阅读 · 0 评论 -
反转数字
int Reverse(int n){ int temp = 0; int m = 0; while(n){ m = m * 10 + n % 10; if(temp != m / 10){ return 0; } temp = m; n = n / 10; }...原创 2020-04-05 10:39:08 · 151 阅读 · 0 评论 -
数位拆分
void spilit(int num){ int n = num; int cnt = 0;//数位 int temp, power; while(num){ num = num / 10; cnt++; } for(int i = 1; i <= cnt; i++){ power = pow(...原创 2020-04-05 10:17:23 · 389 阅读 · 0 评论 -
进击的奶牛(二分)
Farmer John建造了一个有N(2<=N<=100,000)个隔间的牛棚,这些隔间分布在一条直线上,坐标是x1,…,xN (0<=xi<=1,000,000,000)。他的C(2<=C<=N)头牛不满于隔间的位置分布,它们为牛棚里其他的牛的存在而愤怒。为了防止牛之间的互相打斗,Farmer John想把这些牛安置在指定的隔间,所有牛中相邻两头的最近距离越...原创 2020-04-13 12:01:08 · 1924 阅读 · 1 评论 -
优先队列(积雪问题)
B. Producing Snowtime limit per test 1 secondmemory limit per test 256 megabytesinput standard inputoutput standard outputAlice likes snow a lot! Unfortunately, this year’s winter is already over...原创 2020-04-11 22:55:42 · 218 阅读 · 0 评论 -
快速幂
原理:奇数幂:a^(b) = a * a ^ [(b - 1) / 2] * a ^ [(b - 1) / 2] ;偶数幂:a^(b) = a ^(b / 2) * a ^(b / 2) ;int pow_mod(int a, int b, int mod){ int ans = 1; a %= mod; while(b){ if(b & 1){...原创 2020-04-05 12:17:43 · 78 阅读 · 0 评论 -
欧拉筛法和埃氏筛法
void FilterPrime(int n){ bool* isPrimes = new bool[n + 1];//动态数组;释放空间:delete[] isPrimes; for(int i = 2; i <= n; i++){ isPrimes[i] = true; } for(int j = 2; j <= n; j++){ ...原创 2020-04-05 10:11:36 · 153 阅读 · 0 评论 -
KC喝咖啡(二分)
题目背景KC喝咖啡题目描述话说KC和SH在福州的时候常常跑去85°C喝咖啡或者其他的一些什么东西。这天,KC想要喝一杯咖啡,服务员告诉他,现在有n种调料,这杯咖啡只可以加入其中的m种(当然KC一定会加入m种,不会加入少于m种的调料),根据加入的调料不同,制成这杯咖啡要用的时间也不同,得到的咖啡的美味度也不同。KC在得知所有的n种调料后,作为曾经的化竞之神的他,马上就知道了所有调料消耗的时...原创 2020-04-15 19:41:36 · 495 阅读 · 0 评论 -
IOI 排名
神 MY 参加了 IOI,赛后他想了解关于自己排名的信息。题目描述MY 共参加了 TT 次 IOI,每次有 nn 场考试,mm 个人参加。他不知道自己的总分数,但知道每场考试的名次。MY 迫切地想知道自己成绩的范围,于是他找到了你。现在告诉你 MY 每次的排名,请你计算出他最好和最差的可能名次。让我们假设IOI分数没有上限不必考虑并列情况输入格式第一行1个正整数 TT,表示 MY ...原创 2020-04-11 23:02:18 · 847 阅读 · 0 评论 -
跳石头(二分+进击的奶牛2)
题目背景一年一度的“跳石头”比赛又要开始了!题目描述这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石。组委会已经选择好了两块岩石作为比赛起点和终点。在起点和终点之间,有 NN 块岩石(不含起点和终点的岩石)。在比赛过程中,选手们将从起点出发,每一步跳向相邻的岩石,直至到达终点。为了提高比赛难度,组委会计划移走一些岩石,使得选手们在比赛过程中的最短跳跃距离尽可能长。由于预算限制,组...原创 2020-04-13 14:32:04 · 149 阅读 · 0 评论 -
关于anacond的jupyer notebook打不开的问题
1.防火墙的问题https://blog.csdn.net/xc555/article/details/81944979?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-8&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogC...原创 2020-04-29 22:34:32 · 258 阅读 · 0 评论 -
果光的评测姬(模拟)
果光的评测姬Problem:BTime Limit:1000msMemory Limit:65535KDescription蒟蒻果光在寒假训练中被NEFU的评测姬折磨的快疯了,于是果光想到了一个疯狂的报复方法,那就是写一个评测姬评测一下别人的程序寻找快感。既然评测姬是自己人嘛,肯定要留个后门啦,如果是果光自己的程序(用户名为"guoguang"),无论程序运行结果如何,都要返回AC,至...原创 2020-05-04 10:12:56 · 205 阅读 · 0 评论 -
莫拉莱斯的矩阵难题(快速幂+规律)
莫拉莱斯的矩阵难题Problem:DTime Limit:1000msMemory Limit:65535KDescription莫拉莱斯见到了一个数阵:他觉得这个数阵似曾相识(如果你不觉得或者没有找到规律,请注意观察相邻两行),于是有了一个新想法:建立一个新的数阵,在第一层有且仅有一个初始数据Q,按照 类似于 上图的数阵的规律为接下来的几层构造数据,但是,不同的是,莫拉莱斯规定奇数层...原创 2020-05-04 10:26:53 · 378 阅读 · 0 评论 -
图的广度优先遍历
假设图G采用邻接矩阵存储。给出图的广度优先遍历算法,并分析算法的时间复杂度。原创 2020-05-03 13:02:56 · 578 阅读 · 0 评论 -
洛谷签到题
题目描述一天 CYX 闲得无聊,写下了 nn 个数,每个数只会是 11 或 22,每个数是 11 的概率和是 22 的概率都是 50%50%,现在 CYX 想知道他写的这 nn 个数的和,可他写的数太多了,他根本算不了,所以他就想知道总和的期望值。你能告诉他么?输入格式一个整数 nn,表示 CYX 写的数的个数。输出格式一个实数,表示总和的期望值,保留四位小数。输入输出样例输入 #1...原创 2020-04-20 20:48:19 · 198 阅读 · 1 评论 -
树的先序遍历(由中序遍历和后序遍历所得)
题目描述给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,长度\le 8≤8)。输入格式22行,均为大写字母组成的字符串,表示一棵二叉树的中序与后序排列。输出格式11行,表示一棵二叉树的先序。输入输出样例输入 #1复制BADCBDCA输出 #1复制ABCD#include<bits/stdc++.h>#define LL lo...原创 2020-04-28 17:03:16 · 224 阅读 · 0 评论 -
我要去看流星雨(并查集)
我要去看流星雨Problem:FTime Limit:1500msMemory Limit:65535KDescription“天琴座流星雨是已知最古老的流星雨之一,拥有2700年的观测历史。”天文学博士、科普作家高爽称,最早有记录的天琴座流星雨可以追溯到公元前687年,在《春秋》中就有所记载。这几天,天琴座流星雨又刷了一次屏:不少网友表示对这个历史悠久的流星雨十分期待。在2020...原创 2020-05-04 10:34:56 · 260 阅读 · 1 评论 -
是小学数学题吗?(矩阵构造+矩阵快速幂取模)
是小学数学题吗?Problem:ETime Limit:1000msMemory Limit:65535KDescription我还是从前那个少年,没有"亿"丝丝改变!在家学习肯定很累吧???大学的题可太难了!!!好像回到小学呀QAQ~~。忽然,你拿起了表弟的数学作业本,看到表弟竟然做错了,于是作为数学dalao的你想要在表弟面前秀一波操作。题目的描述是这样的:先在已知A为 n×n...原创 2020-05-04 10:31:38 · 290 阅读 · 0 评论 -
均分纸牌(贪心)
展开题目描述有NN堆纸牌,编号分别为 1,2,…,N1,2,…,N。每堆上有若干张,但纸牌总数必为NN的倍数。可以在任一堆上取若干张纸牌,然后移动。移牌规则为:在编号为11堆上取的纸牌,只能移到编号为22的堆上;在编号为NN的堆上取的纸牌,只能移到编号为N-1N−1的堆上;其他堆上取的纸牌,可以移到相邻左边或右边的堆上。现在要求找出一种移动方法,用最少的移动次数使每堆上纸牌数都一样多。例...原创 2020-04-20 21:46:31 · 250 阅读 · 1 评论 -
熬夜的惩罚
熬夜的惩罚Problem:ATime Limit:1000msMemory Limit:65535KDescription卡迪亚得到你给他的答案,就蹦跶蹦跶地去下载游戏了,不过由于游戏太多,一直到晚上12点才下载好。看着这么多好玩的游戏,哪还有心情去睡觉啊,于是悄悄关上房门玩起了游戏。玩着玩着,就到了凌晨5点,这下完蛋了,早上8点还有课呢!!! 于是赶紧倒下去睡觉了(玩了这么久游戏哪可...原创 2020-05-04 10:08:37 · 883 阅读 · 0 评论 -
顺序出栈(模拟栈)
顺序出栈Description给出一个容量为m的栈和一个1~n的任意排列和,将n个数按照给定排列压入栈中,请你求出其是否能够以1,2,3…n的方式出栈。Input第一行给出n和m,其中1<=m<=n<=1000,第二行给出长度为n的排列。Output如果给定的排列能以1,2,3…n的方式出栈,输出YES,否则输出NO。Sample Input 17 51...原创 2020-05-02 21:14:59 · 217 阅读 · 0 评论 -
人类的本质是什么?(贪心+排序)
人类的本质是什么?Problem:GTime Limit:100msMemory Limit:65535KDescription由于果光太菜了,遇到了不会的问题想请教一下群里的大佬,结果发现大佬们在欢乐的讨(shui)论(qun)。大佬们都在复读:“人类的本质是什么?”“A.+1”“B.复读机”“C.人类的本质是什么?”没有时间解答蒟蒻果光的问题。近日,某群的大佬们又开始了复...原创 2020-05-04 10:40:40 · 834 阅读 · 0 评论 -
KMP升级版
原创 2020-04-26 21:35:07 · 123 阅读 · 0 评论 -
栈
#include "../head.h"#include <stack>bool stackPermutation(stack<int> &A, stack<int> &B) { stack<int> S, temp; while (!B.empty()) { temp.push(B.top()); B.po...原创 2020-05-01 17:06:00 · 67 阅读 · 0 评论 -
Vae_1118的行列式(规律题)
Vae_1118的行列式Problem:CTime Limit:1000msMemory Limit:65535KDescriptionVae_1118的学妹最近正在学线性代数, 向上学期线性代数低分飘过的Vae_1118求助. 对于一个形如D_1的行列式, 如何快速计算其值? 他很快看出了答案: 对其施以初等列变换, 得到D_2. 因为有两列完全相同, 故有D_1=D_2=0.现...原创 2020-05-04 10:19:53 · 162 阅读 · 0 评论 -
连通图中是否有环
假设一个连通图采用邻接表作为存储结构,试设计一个算法,判断其中是否存在经过顶点v的回路。并查集(检验图中是否有环)原创 2020-05-03 13:08:32 · 2486 阅读 · 7 评论 -
KMP
原创 2020-04-26 20:41:38 · 152 阅读 · 0 评论 -
n!大数(万进制)
#include<bits/stdc++.h>#define LL long longusing namespace std;const int MAXN = 99999;int ans[MAXN];int main(){ int n,k; while(scanf("%d",&n)!=EOF){ memset(ans, 0, size...原创 2020-05-01 14:05:09 · 167 阅读 · 0 评论 -
KMP模板题
题目描述如题,给出两个字符串 s_1s1 和 s_2s2 ,其中 s_2s2 为 s_1s1 的子串,求出 s_2s2 在 s_1s1 中所有出现的位置。为了减少骗分的情况,接下来还要输出子串的前缀数组 next。(如果你不知道这是什么意思也不要问,去百度搜 kmp算法 学习一下就知道了。)输入格式第一行为一个字符串,即为 s_1s1...原创 2020-04-27 11:54:37 · 161 阅读 · 0 评论 -
图的深度优先遍历
假设一个无向图是非连通的,采用邻接表作为存储结构。设计一个算法,利用深度优先遍历方法求出该图连通分量个数。原创 2020-05-03 13:04:49 · 709 阅读 · 0 评论 -
字典序(模拟)
链接:https://ac.nowcoder.com/acm/contest/5758/I来源:牛客网题目描述小明遇到了一个问题希望你能帮他解决现在有n个数字排成一列构成数组A,数组A中存在n个数a[i], 其中1<=i<=n。数组sj为删除数组A中的第j个数后,剩余n-1个数构成的数组,其中1<=j<=n。小明希望你把s1~sn的数组按照字典序大小排列起来,若两个数组相等,则认为删除元素编号小的数组字典序更小输入描述:输入数据第一行是t,表示数据的组数,接下来每组原创 2020-06-01 10:47:32 · 156 阅读 · 0 评论 -
哈利波特的考试(Floyd算法)
7-8 哈利·波特的考试 (25分)哈利·波特要考试了,他需要你的帮助。这门课学的是用魔咒将一种动物变成另一种动物的本事。例如将猫变成老鼠的魔咒是haha,将老鼠变成鱼的魔咒是hehe等等。反方向变化的魔咒就是简单地将原来的魔咒倒过来念,例如ahah可以将老鼠变成猫。另外,如果想把猫变成鱼,可以通过念一个直接魔咒lalala,也可以将猫变老鼠、老鼠变鱼的魔咒连起来念:hahahehe。现在哈利·波特的手里有一本教材,里面列出了所有的变形魔咒和能变的动物。老师允许他自己带一只动物去考场,要考察他把这只动物原创 2020-06-09 15:44:45 · 729 阅读 · 0 评论 -
拯救007(DFS)
拯救007题目说明:在老电影“007之生死关头”(Live and Let Die)中有一个情节,007被毒贩抓到一个鳄鱼池中心的小岛上,他用了一种极为大胆的方法逃脱 —— 直接踩着池子里一系列鳄鱼的大脑袋跳上岸去!(据说当年替身演员被最后一条鳄鱼咬住了脚,幸好穿的是特别加厚的靴子才逃过一劫。)设鳄鱼池是长宽为100米的方形,中心坐标为 (0, 0),且东北角坐标为 (50, 50)。池心岛是以 (0, 0) 为圆心、直径15米的圆。给定池中分布的鳄鱼的坐标、以及007一次能跳跃的最大距离,你需要告诉原创 2020-05-26 09:15:19 · 344 阅读 · 0 评论 -
老爷机(DP)
老爷机Problem:ITime Limit:1000msMemory Limit:65535KDescription这一天,无所事事的Carmen意外地得到了一台老爷机。老爷机上有许多游戏,Carmen可以随意玩耍,但是每一个游戏都有固定的开始和结束时间。Carmen不想做一个中途挂机的坏孩子,所以每一个游戏一旦开始玩就必须玩到结束,不能中途停止去玩其他游戏,也不能从中途开始玩某一个游...原创 2020-05-04 11:03:02 · 278 阅读 · 0 评论 -
减成一(差分)
链接:https://ac.nowcoder.com/acm/contest/5758/B来源:牛客网题目描述存在n个数,每次操作可以任选一个区间使得区间内的所有数字减一。问最少多少次操作,可以让所有数都变成1。数据保证一定有解。输入描述:输入t,代表有t组数据。每组数据输入n,代表有n个数。接下来一行输入n个数,数字大小小于1e6。(t<=1000,n<1e5,∑n < 1e6)输出描述:每组数据输出一个整数代表最少需要操作的次数。示例1输入复制161 3 5原创 2020-06-01 10:27:21 · 328 阅读 · 0 评论 -
位运算
与(&):同真才为真或(|):同假才为假异或(^):同真异假取反(~):真变假,假变真左移(<<):相当于*2右移(>>):相当于/2原创 2020-05-14 15:56:35 · 126 阅读 · 0 评论 -
扔硬币(快速幂+组合数)
链接:https://ac.nowcoder.com/acm/contest/5758/D来源:牛客网有n枚硬币,每枚硬币扔出来是正面和反面的概率各占50%。小明同时扔下了n枚硬币后,已知至少有m枚硬币是反面。请问恰好有k枚硬币是正面的概率是多少。输入描述:输入t,代表有t组数据。每组数据输入一个数n,m,k,代表有n枚硬币,抛出以后至少有m枚是反面的情况下,恰好有k个正面的概率。(t<=1000,n<1e5,m<=1000,k<=n)输出描述:对于结果是p/q,输出分原创 2020-06-01 10:33:00 · 193 阅读 · 0 评论 -
逆波兰算法
中缀表达式转后缀表达式栈实现1.从左到右扫描字符串2.如果遇到数字,就输出3.如果遇到运算符,(1)栈空时,直接入栈(2)栈非空时,与栈顶元素进行优先级比较,如果运算符优先级大,入栈,反之,则弹出优先级小的栈顶元素(并输出)直到运算符符合入栈条件,入栈int Judge(char ch){ if(ch == '+') return 1; if(ch == '-') return 1; if(ch == '*') return 2; if(ch == '/')原创 2020-06-03 19:27:16 · 288 阅读 · 0 评论 -
并查集(模板)
题目描述如题,现在有一个并查集,你需要完成合并和查询操作。输入格式第一行包含两个整数 N,MN,M ,表示共有 NN 个元素和 MM 个操作。接下来 MM 行,每行包含三个整数 Z_i,X_i,Y_iZi ,Xi ,Yi 。当 Z_i=1Zi =1 时,将 X_iXi 与 Y_iYi 所在的集合合并。当 Z_i=2Zi =2 时,输出 X_iXi 与 Y_iYi 是否在同一集合内,是的输出 Y ;否则输出 N 。输出格式原创 2020-05-18 21:06:12 · 545 阅读 · 1 评论