
题解
Rrrrya
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
树上任意两叶节点距离平方和
牛客icpc热身赛第八场B#include <stdio.h>#include <stdarg.h>#include <stdlib.h>#include <math.h>#include <string.h>#include <vector>#include <list>#include <set>#include <utility> #include <map>#原创 2021-05-06 16:02:55 · 280 阅读 · 0 评论 -
HDU-4821-String (字符串哈希)
题目链接题意:给定数字L、M以及字符串S,问S有多少长度为L*M的子串满足分成M段L长度的字符串并且每段不完全相同。思路:运用的哈希的算法,将每一位的值计算成一个哈希值,再将m段的字符串哈希值存在map中与m比较,然后再去掉子串最前面的L长度的哈希值,加上子串后L长度的哈希值,以此类推。#include <bits/stdc++.h>using namespace std;#define ull unsigned long longconst int N = 1e5+10;c原创 2021-04-07 13:35:19 · 412 阅读 · 0 评论 -
ZOJ - 3261-Connections in Galaxy War(反向并查集)
题目链接题意:有n个恒星,每个行星有个攻击力,m个行星之间的道路,q次操作,query:询问和a行星在同一个并查集中攻击力最大的行星编号,相同输出小的,没有输出-1,destory:将a行星和b行星之间联系删除,也就是说a行星到b行星之间的路径不存在了,但是仍可通过其他行星使得其二在同一个并查集中。思路:反向并查集,先把所有的关系存下来,将m条路径除去被destory的以外建立并查集,然后从最后一个询问开始反向操作,遇到destory将道路重新加回并查集中,因为对于该条destory上面的询问来说这条路原创 2020-10-28 16:16:18 · 320 阅读 · 0 评论 -
2019山东省省赛
A - Calandar题意:给定一个日期以及日期的星期,问另一个日期的星期,每周5天,一月30天,一年12月思路;每周的天数一样,所以只要看日的差别即可#include <bits/stdc++.h>using namespace std;#define ll long longconst int N = 5e4+10;string ww[10] = {"0","Monday","Tuesday","Wednesday","Thursday","Friday"};int m原创 2020-10-03 11:12:56 · 309 阅读 · 0 评论 -
第十七届中国计量大学程序设计竞赛
F: Flag Scramble Competition题意:输出题目描述中出现次数最多的字母思路:读入字符串,用map统计字母个数 (代码是找字母用的)#include <stdio.h>#include <stdarg.h>#include <stdlib.h>#include <math.h>#include <string.h>#include <vector>#include <list>#原创 2020-09-27 16:10:03 · 486 阅读 · 0 评论 -
ZCMU 暑期练习赛2
A:蒜头君的羽毛球双端队列的简单应用#include <stdio.h>#include <stdarg.h>#include <stdlib.h>#include <math.h>#include <string.h>#include <vector>#include <list>#include <set>#include <utility> #include <m原创 2020-08-23 11:34:34 · 202 阅读 · 0 评论 -
次短路问题(陕西师范大学第九届ACM程序设计竞赛-F 新冠病毒要回家)
求到顶点v的次短路时,有两种情况,要么是到其他某个顶点u的最短路再加上u->v的边,要么是到某个顶点u的次短路再加上u->v的边。 一般我们用Dijkstra求得最短路(无负权边),由此我们只要在Dijkstra算法中求取每个顶点的次短路即可。例题:陕西师范大学第九届ACM程序设计竞赛-F 新冠病毒要回家#include <stdio.h>#include <stdarg.h>#include <stdlib.h>#include <m..原创 2020-08-18 21:36:23 · 219 阅读 · 0 评论 -
ZCMU-1740: 关系推断
题目拓扑的小升级, 输出所有存在的大小关系,基本与拓扑相同,只是在跑入度为0的点时,加一个bfs搜索一下这个点能到达的点,也就是大小关系的判断就OK了。#include<bits/stdc++.h>using namespace std;char s[5];int in[50];int vis[50][50];vector<int>cot;vector<int>G[50];vector<pair<int,int> >ans;原创 2020-08-14 09:39:24 · 259 阅读 · 0 评论 -
2020 Multi-University Training Contest 6 A Very Easy Graph Problem
传送门题目:给定n个点,m条边,每个点的权值为0 or 1,求所有权值为1的点到权值为0的点的最短路的和,第i条边权值的为2^i。思路:首先,根据给定的边权值的条件可以发现:后建的边一定是大于之前建的边的权值和(等比数列求和),所以只要建成一个树即可(并查集维护),这样就处理掉了最短路的问题,建完树之后,我们不妨把节点1当作根节点,然后跑一遍dfs遍历一遍树,统计每个节点的子树的1和0的个数,最后统计每条边要被经过的次数(贡献值),这个次数计算方式,就是当前这条边的子树的0的个数乘上不在其子树上的节点原创 2020-08-07 10:30:21 · 237 阅读 · 0 评论 -
ZCMU-1803: 2n皇后问题
八皇后问题的进阶版先枚举白皇后的位置,再枚举黑皇后的位置,判断黑皇后要多判断一下该位置是否已放置白皇后。#include <iostream>#include <cstdio>#include <cstring>#include <queue>using namespace std;#define INF 0x3f3f3f#define cio ios::sync_with_stdio(false)const int N = 100010.原创 2020-07-28 10:29:07 · 231 阅读 · 0 评论 -
牛客算法周周练16 D:Rinne Loves Dynamic Graph
传送门思路:最短路没有负权边,首选DIjsktra。边权值变化有规律,从x -> 1/(1-x) -> (x-1)/x -> x 推出三次变化为一个循环由此可以建分层图按权值 x 1/(1-x) (x-1)/x最后用Dijsktra搜索最短路#include <iostream>#include <cmath>#include <cstdio>#include <cstring>#include <queue&原创 2020-07-25 19:35:27 · 156 阅读 · 0 评论 -
2020 Multi-University Training Contest 2 - Total Eclipse
传送门题意:有n个城市,m条道路,每个城市都有一个权值,现在要让每个城市的权值变成0,可执行的操作为:每次选择一个城市,使从这个城市出发能到的所有城市的权值-1,注意:当某个城市的权值变为0之后,它将不能被经过,问最少要几次操作使得所有城市的权值都变成0。思路:先把题意抽象出来,也就是每次选择一个连通块,连通块中的点的权值-1,当某个点的权值为0,就不能算在连通块内。由于权值变为0的可能导致不连通的情况,每次选的权值肯定是整个连通块内的最小权值。我们可以将整个过程倒过来看,从权值最大的点开始原创 2020-07-24 10:44:57 · 274 阅读 · 0 评论 -
2020 年 “联想杯”全国高校程序设计在线邀请赛暨第三届上海理工大学程序设计竞赛 D. Disaster Recovery(最小生成树)
题目题目大意:一共有n个点,m条边,一个点到另一个点的距离等于这两个点斐波那契数之和,现要求联通这n个点,并且在路径最短的情况下输出度数最大的点的度数。思路:当时比赛的时候想到了最小生成树,但是这个路径长度不会处理,数学是真的差,就一个斐波那契数列的性质都没想到,补的时候还以为要数据离散化,然而只要排个序,然后最小生成树就行了。#include<bits/stdc++.h>using namespace std;#define pi acos(-1)#define mod 99824原创 2020-06-02 13:40:02 · 354 阅读 · 0 评论 -
ZCMU-1200:小明的难题
Description这是一个小明认为很难的问题,快到五一长假了,小明突然想去旅游,但是他有一些想去的地方,他搜集了他想去的地方的路线信息,但是他搜集的信息太多了,因此他决定把制定路线的事情交给你(他的大管家)。为了描述方便,我们将他可能要经过的n个城市编号1,2,…, n,当然他要求他到目的地所需的时间最短。Input一共有t组数据,每组数据的第一行有两个正整数n, m,(n<=1000,m<=10000)分别表示城市的数量和路的条数,接下来m行,每行有三个整数a,b,c,(1=<原创 2020-07-17 10:36:11 · 449 阅读 · 0 评论 -
ZCMU-2010:company
DescriptionThere are n kinds of goods in the company, with each of them has a inventory of cnti and direct unit benefit vali. Now you find due to price changes, for any goods sold on day i, if its direct benefit is val, the total benefit would be i⋅val.B原创 2020-07-11 20:28:16 · 375 阅读 · 0 评论 -
牛客编程巅峰赛S1赛季第1场 - 青铜&白银局
A:移动字母题目描述给定一个只包含小写字母的字符串s,牛牛想将这个字符串中的所有’a’字母全部移动到字符串的末尾,而且保证其它字符的相对顺序不变。其中字符串s的长度<=1e6。输入"abcavv"输出"bcvvaa"思路:遍历一遍字符串,把不是a的字符按顺序组成新的字符串,同时统计字符串中的a的个数cnt,最后在新字符串尾加上cnt个a。class Solution {public: /** * * @param s string字符串 * @r原创 2020-07-10 15:38:32 · 323 阅读 · 0 评论 -
ZCMU:1396: 队列问题(2)(模拟)
Description有一个含有n个元素的队列q,每个元素的大小满足1<=xi<=9(0<i<n)。队列有一种操作,对于队首元素若是整个队列最大的则出队列,否则加入队尾。对于一个给定的m,你能告诉我xm是第几个出队列的吗?Input输入数据第一行是一个整数T(1<=T<=1000),表示输入数据的组数;每组数据的第一行是两正整数n表示队列的大小和第几个元素(1<n<=1000,0<=m<n),第二行有n个数xi ,分别代表每个元素的大小。O原创 2020-06-05 16:37:50 · 293 阅读 · 0 评论 -
ZCMU:1390: 队列问题(1)(模拟)
Description给定一个队列q,队列中的每个元素都有两种属性name和pri。对于队列有3中操作分别为: 1 name pri 代表向队列中添加(name,pri)这个元素。 2 代表输出队列中pri最高的元素的name并将该元素移除队列。 3 代表输出队列中pri最低的元素的name并将该元素移除队列。 假设队列初始为空,且所有元素的name值各不相同,pri值也各不相同。给定若干操作,对于2和3操作输出相应元素的name。Input每行输入分别代表一种操作,若输入为0则结束。(1<=n原创 2020-06-05 16:11:14 · 244 阅读 · 0 评论 -
ZCMU:1381: 简单题(多重背包)
Description这里有不同重量的砝码 可以是1g,2g。。。现在给你一个数N表示有N种重量的砝码 ai。。。an表示重量 bi。。。bn表示数量 问你不能称量出最少几克的重量 (最大不超过8500克哦亲)Input第一行输入N表示砝码的重量种类(N=0结束)接下来N行每行输入ai ,bi表示砝码的质量和数量(a<100,b<100)Output输出不能称量出的质量中最少的质量Sample Input31 12 15 331 12 13 1Sample原创 2020-06-05 15:24:34 · 310 阅读 · 0 评论 -
ZCMU:1127: 第三章:再见,林静!(逆波兰式)
Description郑薇的专业是土木工程,理工科的女生原本就是珍稀动物,而且大多数都长得比较抽象。想她郑微虽然不是什么绝代美女,跟她漂亮的妈妈相比也有一定差距,但她有一张讨喜的圆脸,小巧的尖下巴,大而灵动的眼睛,秀气挺直的鼻子,尤其是皮肤白皙无瑕——这是妈妈也承认自己年轻的时候也比不上的。因此,根据郑微自己无数次揽镜自照的鉴定结果,她绝对称得上是人见人爱、花见花开的美少女,简直就是琼瑶阿姨笔下的女主角。虽然琼瑶阿姨的小说已经落伍几个世纪了,但阿姨的审美观还是历久弥新的,看她挑中的连续剧女主角一个比一个红原创 2020-06-04 20:04:18 · 304 阅读 · 0 评论 -
ZCMU-1203: 逆序数(树状数组求逆序对)
题目#include<bits/stdc++.h>using namespace std;#define pi acos(-1)#define mod 998244353#define INF 0x3f3f3f#define fi first#define se second#define it iterator#define ins insert#define mp make_pair#define pb push_back#define lb lower_bound原创 2020-06-01 20:59:50 · 389 阅读 · 0 评论 -
HDU1166敌兵布阵(树状数组-单点更新+区间查询)
传送门#include<bits/stdc++.h>using namespace std;#define pi acos(-1)#define mod 998244353#define INF 0x3f3f3f#define fi first#define se second#define it iterator#define ins insert#define mp make_pair#define pb push_back#define ll long long#原创 2020-06-01 19:25:37 · 164 阅读 · 0 评论 -
ZCMU-1435: 盟国(带删除并查集)
Description世界上存在着N个国家,简单起见,编号从0~N-1,假如a国和b国是盟国,b国和c国是盟国,那么a国和c国也是盟国。另外每个国家都有权宣布退盟(注意,退盟后还可以再结盟)。定义下面两个操作:“M X Y” :X国和Y国结盟 (如果X与Z结盟,Y与Z结盟,那么X与Y也自动结盟).“S X” :X国宣布退盟 (如果X与Z结盟,Y与Z结盟,Z退盟,那么X与Y还是联盟).Input多组case。每组case输入一个N和M (1 ≤ N ≤ 100000 , 1 ≤ M ≤ 100原创 2020-05-21 10:11:34 · 336 阅读 · 0 评论 -
牛客算法周周练7:D华华和月月逛公园(Tarjan割边)
题目描述月月和华华一起去逛公园了。公园很大,为了方便,可以抽象的看成一个N个点M条边的无向连通图(点是景点,边是道路)。公园唯一的入口在1号点,月月和华华要从这里出发,并打算参观所有的景点。因为他们感情很好,走多远都不会觉得无聊,所以所有景点和道路都可以无数次的重复经过。月月发现,有些路可走可不走,有些路则必须要走,否则就无法参观所有的景点。现在月月想知道,有几条路是不一定要经过的。因为这是个很正常的公园,所以没有重边和自环。输入描述:第一行两个正整数N和M,表示点数和边数。接下来M行,每行两个正整原创 2020-05-20 18:47:47 · 265 阅读 · 0 评论 -
AtCoder Beginner Contest 168 D - .. (Double Dots)(建无向图+BFS)
Problem StatementThere is a cave.The cave has N rooms and M passages. The rooms are numbered 1 to N, and the passages are numbered 1 to M. Passage iconnects Room Ai and Room Bi bidirectionally. One can travel between any two rooms by traversing passage原创 2020-05-18 09:36:57 · 289 阅读 · 0 评论 -
ZCMU-2153-ly的排队问题(拓扑排序)
Description马上要上体育课了,上体育课之前总归是要排个队的,ly作为班长,怎么排队的问题只能由她来解决,但是马上要上课了,ly又不清楚所有人的身高,她又不好意思问每个人的身高,因为这样会显的自己很不负责,于是她只能通过肉眼观察…那么问题来了,她只能观察出两个人A和B谁高谁矮,但是她没有办法排出一个序列。ly都已经帮你出了两次主意赢过wjw,那么现在她需要你的帮助,你可以帮她吗?(ly会告诉你A和B谁高,如果A比B高,会用A>B来表示)Input只有一组数据,每个比较结果占一行,读取原创 2020-05-16 14:55:40 · 338 阅读 · 0 评论 -
ZOJ:1003 Crashing Balloon(DFS)
On every June 1st, the Children’s Day, there will be a game named “crashing balloon” on TV. The rule is very simple. On the ground there are 100 labeled balloons, with the numbers 1 to 100. After the referee shouts “Let’s go!” the two players, who each原创 2020-05-16 10:17:46 · 343 阅读 · 0 评论 -
ZOJ:1002 Fire Net(DFS)
Suppose that we have a square city with straight streets. A map of a city is a square board with n rows and n columns, each representing a street or a piece of wall.A blockhouse is a small castle that has four openings through which to shoot. The four ope原创 2020-05-16 09:35:44 · 169 阅读 · 0 评论 -
ZCMU-4993- bearBaby loves sleeping(BFS)
DescriptionSleeping is a favorite of little bearBaby, because the wetness of Changsha in winter is too uncomfortable. One morning, little bearBaby accidentally overslept. The result of being late is ...原创 2020-03-18 10:44:03 · 245 阅读 · 0 评论 -
最长非递减子序列(ZCMU-2112-聪明的美食家)
这有一点为什么要求非递减而不是递增,当然这是题意,也就是下面斜体的描述,翻译过来就是不小于,也就是非递减。Description如果有人认为吃东西只需要嘴巴,那就错了。都知道舌头有这么一个特性,“由简入奢易,由奢如简难”(据好事者考究,此规律也适合许多其他情况)。具体而言,如果是甜食,当你吃的食物不如前面刚吃过的东西甜,就很不爽了。大宝是一个聪明的美食家,当然深谙此道。一次他来到某小吃一条...原创 2019-12-01 09:47:02 · 299 阅读 · 0 评论 -
ZCMU-1811:-JAM计数法
DescriptionJam是个喜欢标新立异的科学怪人。他不使用阿拉伯数字计数,而是使用小写英文字母计数,他觉得这样做,会使世界更加丰富多彩。在他的计数法中,每个数字的位数都是相同的(使用相同个数的字母),英文字母按原先的顺序,排在前面的字母小于排在它后面的字母。我们把这样的“数字”称为Jam数字。在Jam数字中,每个字母互不相同,而且从左到右是严格递增的。每次,Jam还指定使用字母的范围,例如...原创 2020-02-19 11:36:22 · 181 阅读 · 0 评论 -
ZCMU-1846- 开心的金明
复习了一下01背包,好久没做生疏了。Description金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间他自己专用的很宽敞的房间。更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎 么布置,你说了算,只要不超过N元钱就行”。今天一早金明就开始做预算,但是他想买的东西太多了,肯定会超过妈妈限定的N元。于是,他把每件物品规定了一 个重要度,分为5等:用整数1~5表示,第5...原创 2020-02-19 11:31:06 · 185 阅读 · 0 评论 -
简单并查集-ZCMU-4940_5023
4940:畅通工程#include <bits/stdc++.h>using namespace std;#define N 1000000007#define ll long long#define mem(a) memset(a,0,sizeof(a)) int s[1010]; int ffind(int x){ while(x!=s[x]){ ...原创 2020-01-03 13:47:01 · 203 阅读 · 0 评论 -
ZCMU-1310-Collecting Beats is Fun
DescriptionCucumber boy is fan of Kyubeat, a famous music game.Kyubeat has 16 panels for playing arranged in 4 × 4 table. When a panel lights up, he has to press that panel.Each panel has a timing ...原创 2020-01-02 21:20:50 · 170 阅读 · 0 评论 -
ZCMU-1229-Two bags
DescriptionXiaoming has 2*n cubes,each cube contains an integer from 10 to 99.He arbitrarily chooses n cubes and puts them in the first bag.The remaining cubes form the second bag.Xiaoming decided t...原创 2020-01-02 21:04:55 · 212 阅读 · 2 评论 -
ZCMU-1646-盒子游戏
Description有两个相同的盒子,其中一个装了 n 个球,另一个装了一个球。Alice 和 Bob 发明了一个游戏,规则如下:Alice 和 Bob 轮流操作,Alice 先操作。每次操作时,游戏者先看看哪个盒子里的球的数目比较少,然后清空这个盒子(盒子里的球直接扔掉),然后把另一个盒子里的球拿一些到这个盒子中,使得两个盒子都至少有一个球。如果一个游戏者无法进行操作,他(她)就输了。...原创 2020-01-02 20:43:37 · 286 阅读 · 0 评论 -
ZCMU-2092-最大子阵
Description给定一个n*m的矩阵A,求A中的一个非空子矩阵,使这个子矩阵中的元素和最大。其中,A的子矩阵指在A中行和列均连续的一块。Input输入的第一行包含两个整数n, m,分别表示矩阵A的行数和列数。接下来n行,每行m个整数,表示矩阵A。Output输出一行,包含一个整数,表示A中最大的子矩阵中的元素和。Sample Input3 3-1 -4 33 4 -1...原创 2020-01-02 15:35:28 · 375 阅读 · 0 评论 -
ZCMU-1553
Description定义函数f(1)=F(2)=+++f(n)= f(n-1)f(n-1) f(n-1) f(n-1) f(n-1)你的目标就是输出f(n)Input输入包含多组数据每组数据有一个正整数n(0<n<7)Output每组数据输出f(n),每个案例之间用空行隔开,没个案例的结尾没有多余空格S...原创 2019-12-17 15:50:14 · 189 阅读 · 0 评论 -
ZCMU-1209-最大面积
基础DFS,刚研究,还在学习中,之前以为摸透了,结果。。。Description给定一个n*m的矩阵,其中有k个格子是1,其他全部是0。你的任务是告诉我最大的全部由1组成的图形的最大面积为多少?Input输入包括多组测试数据,第一行为三个正整数n,m,k,(1<=n,m<=100,1<=k<=n*m),接下来k行,每行有两个正整数x,y(1<=x<=n...原创 2019-12-09 16:50:01 · 372 阅读 · 0 评论 -
ZCMU-1316-数字7
Description有人很喜欢数字7,喜欢到什么程度呢,就是连能整除7的二位数也喜欢,0不能整除7。现在有一串数字(数字的首位不为0),他只能从开头取喜欢的数字(取出的数字是连续的)求最多有几个数字他能取出。Input有多组数据,每组数据有一个整数(至少1位,至多500位)。Output输出相应的答案,占一行。Sample Input123456789707Sample Ou...原创 2019-12-09 12:53:36 · 295 阅读 · 0 评论