入门OJ
herobrineAC
信息学社会团体团长
展开
-
Wormholes——SPFA判负环
题目:描述John在他的农场中闲逛时发现了许多虫洞。虫洞可以看作一条十分奇特的有向边,并可以使你返回到过去的一个时刻(相对你进入虫洞之前)。John的每个农场有M条小路(无向边)连接着N(从1…N标号)块地,并有W个虫洞。其中1<=N<=500,1<=M<=2500,1<=W<=200。现在John想借助这些虫洞来回到过去(出发时刻之前),请你告诉他能办到吗。John将向你提供F(1<=F<=5)个农场的地图。没有小路会耗费你超过10000秒的时原创 2020-07-31 20:30:58 · 277 阅读 · 0 评论 -
奖金——构造最小拓扑序
题目:描述Mr.Z心情好,决定给每位员工发奖金。公司决定以每个人本年在公司的贡献为标准来计算他们得到奖金的多少。于是Mr.Z下令召开m方会谈。每位参加会谈的代表提出了自己的意见:“我认为员工a的奖金应该比b高!”Mr.Z决定要找出一种奖金方案,满足各位代表的意见,且同时使得总奖金数最少。每位员工奖金最少为100元。输入第一行两个整数n,m,表示员工总数和代表数;以下m行,每行2个整数a,b,表示某个代表认为第a号员工奖金应该比第b号员工高。n<=10000,m<=20000原创 2020-07-31 19:14:15 · 276 阅读 · 0 评论 -
拓扑——判断是否有唯一的拓扑序
题目:描述从前有一个萌萌哒的图,它是一个有向无环图。它想知道自己的拓扑序是否唯一。但因为图不会写代码,所以它把这个任务交给了你。输入第一行两个正整数 n, m 表示图的点数和边数。接下来 m 行,每行两个整数 x, y,表示有一条从 x 到 y 的有向边。1 ≤ n ≤ 100000, 1 ≤ m ≤ 100000输入保证图中无环。输出如果图的拓扑序唯一,输出一行一个字符串 ”YES”。否则输出 “NO“样例输入4 41 22 32 41 3输出NO原创 2020-07-31 16:55:25 · 6091 阅读 · 1 评论 -
Revamping Trails 道路升级——多维最短路
题目:描述每天,农夫John需要经过一些道路去检查牛棚N里面的牛. 农场上有M(1<=M<=50,000)条双向泥土道路,编号为1…M.道路i连接牛棚P1_i和P2_i (1 <= P1_i <= N; 1 <= P2_i<= N). John需要T_i (1 <= T_i <= 1,000,000)时间单位用道路i从P1_i走到P2_i或者从P2_i 走到P1_i 他想更新一些路经来减少每天花在路上的时间.具体地说,他想更新K (1 <=原创 2020-07-30 16:59:08 · 241 阅读 · 0 评论 -
最短路上的统计——Floyd
题目:描述一个无向图上,没有自环,所有边的权值均为1,对于一个点对(a,b)我们要把所有a与b之间所有最短路上的点的总个数输出。输入第一行n,m,表示n个点,m条边接下来m行,每行两个数a,b,表示a,b之间有条边在下来一个数p,表示问题的个数接下来p行,每行两个数a,b,表示询问a,bn<=100,p<=5000输出对于每个询问,输出一个数c,表示a,b之间最短路上点的总个数样例输入5 61 21 32 32 43 54 532 55原创 2020-07-29 18:57:15 · 230 阅读 · 0 评论 -
Roadblocks——SPFA求次短路
题目:描述贝茜把家搬到了一个小农场,但她常常回到FJ的农场去拜访她的朋友。贝茜很喜欢路边的风景,不想那么快地结束她的旅途,于是她每次回农场,都会选择第二短的路径,而不象我们所习惯的那样,选择最短路。 贝茜所在的乡村有R(1<=R<=100,000)条双向道路,每条路都联结了所有的N(1<=N<=5000)个农场中的某两个。贝茜居住在农场1,她的朋友们居住在农场N(即贝茜每次旅行的目的地)。 贝茜选择的第二短的路径中,可以包含任何一条在最短路中出现的道路,并且,一条路可以重复走多原创 2020-07-29 16:38:45 · 355 阅读 · 4 评论 -
Hide and Seek 捉迷藏 USACO 最短路板子题
题目:描述贝茜在和约翰玩一个“捉迷藏”的游戏.她正要找出所有适合她躲藏的安全牛棚.一共有N(2≤N≤20000)个牛棚,被编为1到N号.她知道约翰(捉牛者)从牛棚1出发.所有的牛棚由M(1≤M≤50000)条双向路连接,每条双向路连接两个不同的牛棚.所有的牛棚都是相通的.贝茜认为同牛棚1距离最远的的牛棚是安全的.两个牛棚间的距离是指,从一个牛棚到另一个牛棚最少需要通过的道路数量.请帮贝茜找出所有的安全牛棚.输入第1行输入两个整数N和M,之后M行每行输入两个整数,表示一条路的两个端点.输出原创 2020-07-28 19:03:44 · 226 阅读 · 0 评论 -
方格取数——移动类DP
题目:设有N*N的方格图(N<=10),我们将其中的某些方格中填入正整数,而其他的方格中则放人数字0。如下图所示(见样例 ,黄色和蓝色分别为两次走的路线,其中绿色的格子为黄色和蓝色共同走过的):某人从图的左上角的A点出发,可以向下行走,也可以向右走,直到到达右下角的B 点。在走过的路上,他可以取走方格中的数(取走后的方格中将变为数字0)。此人从A点到B点共走两次,试找出2条这样的路径,使得取得的数之和为最大。输入输入的第一行为一个整数N(表示N*N的方格图),接下来的每行有三个整数原创 2020-07-27 20:42:53 · 239 阅读 · 0 评论 -
数字三角形4——移动类DP
题目:描述一个数字三角宝塔。设数字三角形中的数字为绝对值不超过1000的整数。小K从最顶层走到最底层,每一步可向下或右斜线向下走。每走过一个节点他会把这个节点的数字加在自己计数器中。另外他最多只能向下走k次。现在小K想知道他到达底层后,计数器中可能的最大的值。输入输入数据的第1行是数字三角形的行数n和能够沿左斜线向下走的次数k,1<=n<=1000,0<=k<=100。接下来n行是数字三角形各行中的数字。所有数字都小于1000。输出如题样例输原创 2020-07-27 20:21:25 · 281 阅读 · 0 评论 -
数字三角形3——移动类DP
题目:描述一个数字三角宝塔。设数字三角形中的数字为绝对值不超过1000的整数。小K从最顶层走到最底层,每一步可沿向下或右斜线向下走。每走过一个节点他会把这个节点的数字加在自己计数器中。另外他有一次机会,将他的计数器的数清零,他可以在任意时刻使用这次机会。现在小K想知道他到达底层后,计数器中可能的最大的值.输入输入数据的第1 行是数字三角形的行数n,1<=n<=1000。接下来n行是数字三角形各行中的数字。所有数字都小于1000。输出程序运行结束时,将计算出的最大原创 2020-07-27 20:07:23 · 225 阅读 · 0 评论 -
数字三角形2——含绝对值的移动类DP
题目:描述一个数字三角宝塔。设数字三角形中的数字为绝对值不超过1000的整数。现规定从最顶层走到最底层,每一步可沿向下或右斜线向下走。求解从最顶层走到最底层的一条路径,使得沿着该路径所经过的数字的总和的绝对值最大,输出最大值输入输入数据的第1 行是数字三角形的行数n,1<=n<=1000。接下来n行是数字三角形各行中的数字。所有数字都小于1000。输出程序运行结束时,将计算出的最大值输出。样例输入413 24 10 14 3 2 20输出24原创 2020-07-27 19:45:32 · 210 阅读 · 0 评论 -
传球游戏之最小总代价——状压DP
题目:描述n个人在做传递物品的游戏,编号为1-n。游戏规则是这样的:开始时物品可以在任意一人手上,他可把物品传递给其他人中的任意一位;下一个人可以传递给未接过物品的任意一人。即物品只能经过同一个人一次,而且每次传递过程都有一个代价;不同的人传给不同的人的代价值之间没有联系;求当物品经过所有n个人后,整个过程的总代价是多少。输入第一行为n,表示共有n个人(16>=n>=2);以下为n*n的矩阵,第i+1行、第j列表示物品从编号为i的人传递到编号为j的人所花费的代价,特别的有原创 2020-07-26 20:28:31 · 258 阅读 · 0 评论 -
旅行者的背包——分组背包类
题目:描述cici去远游,却发现他的背包不同于01背包,他的物品大致可分为k组,每组中的物品相互冲突,每组至多只能选一个,现在,他想知道最大的利用价值是多少。输入两个数m,n,表示一共有n件物品,总重量为m接下来n行,每行3个数ai,bi,ci,表示物品的重量,利用价值,所属组数1<=m<=1000 1<=n<=1000 组数t<=100输出一个数,最大的利用价值样例输入45 310 10 110 5 150 400 2输出10原创 2020-07-26 17:27:03 · 379 阅读 · 0 评论 -
石子合并2——环状合并DP
题目描述在一个环形跑道上有N堆石子,每次取相邻两堆进行合并最终合并成为一堆。请问将每次合并后的代价进行累加其总和最少为多少输入第一行为石子堆数N,N<=200第二行到第N行,每行一个正整数代表石子数,其小于10000输出一行,表示最小的总得分样例输入44594输出43此题是典型的合并类DP,板子题,它和石子合并1所不同的是这次的跑道是环状的,也就是首尾相连,最后一个可以和最开始一个合并了。所以我们可以将数组开成双倍的,从而达到环的效果。借此机会原创 2020-07-26 17:00:15 · 343 阅读 · 0 评论 -
危险的工作
题目Description给出一个数字N,N<=11.代表有N个人分担N个危险的工作。每个人对应每个工作,有个危险值每个人担任其中一项,问每个人危险值相加,最小值是多少。Input第一行给出数字N,接下来N行N列第i行第j列,代表第i个人担负第j个工作的危险值是多少Output如题Sample Input310 2 32 3 43 4 5Sample Outpu...原创 2019-07-10 09:01:05 · 355 阅读 · 0 评论 -
Lake Counting
题目:DescriptionDue to recent rains, water has pooled in various places in Farmer John’s field, which is represented by a rectangle of N x M (1 <= N <= 100; 1 <= M <= 100) squares. Each sq...原创 2019-07-10 09:26:47 · 739 阅读 · 1 评论 -
间隔排列
题目:【题意描述】有2N个木块,每个木块标上1到N的自然数中的一个,每个数字会出现在两个木块上。把这些木块排成一排,要求是:标号为i的两个木块之间要间隔i个其它木块。比如说N=3的情况,下面就是一个可行的排列:3,1,2,1,3,2。编程实现,对给定的N,求出一个可行排列。【输入格式】输入只有一行,给出一个数字N,N<=40【输出格式】输出一个满足题意的排列,任两个数字间用一个空...原创 2019-07-14 09:23:50 · 2648 阅读 · 1 评论 -
周末舞会
题目:Description假设在周末舞会上,男士们和女士们进入舞厅时,各自排成一队。跳舞开始时,依次从男队和女队的队头上各出一人配成舞伴。规定每个舞曲能有一对跳舞者。若两队初始人数不相同,则较长的那一队中未配对者等待下一轮舞曲。现要求写一个程序,模拟上述舞伴配对问题。Input第一行两队的人数;第二行舞曲的数目。Output配对情况Sample Input4 67Sam...原创 2019-07-15 11:28:16 · 751 阅读 · 0 评论 -
细胞&求细胞个数
题目:Description一矩形阵列由数字0到9组成,数字1到9代表细胞,细胞的定义为沿细胞数字上下左右还是细胞数字则为同一细胞,求给定矩形阵列的细胞个数。Input整数m,n(m行,n列)1<=N,M<=100Output细胞的个数Sample Input4 100234500067103456050020456006710000000089Sample ...原创 2019-07-16 11:28:00 · 349 阅读 · 0 评论 -
营救铁达尼号
题目Description铁塔尼号遇险了!他发出了求救信号。距离最近的哥伦比亚号收到了讯息,时间就是生命,必须尽快赶到那里。通过侦测,哥伦比亚号获取了一张海洋图。这张图将海洋部分分化成n * n个比较小的单位,其中用1标明的是陆地,用0标明是海洋。船只能从一个格子,移到相邻的四个格子。为了尽快赶到出事地点,哥伦比亚号最少需要走多远的距离。Input第一行为n,下面是一个n * n的0,1矩...原创 2019-07-16 11:52:04 · 1861 阅读 · 0 评论 -
跳房子
题目:Description奶牛按不太传统的方式玩起小朋友玩的跳房子游戏,现给出一个5*5的由数字组成的网格。它们在格子中向前前跳,向后跳,向左跳,向右跳,跳到网格中另一个数字后,又这样继续跳(可能跳到某个已跳过的数字)。一共在网格中跳过五次后,它们经过的格子数组成一个六位数(可能是0开始头的,例如000201).现问所有可以被跳出来的不同整数的总数。Input输入共五行,每行五个数字....原创 2019-07-12 12:00:34 · 499 阅读 · 0 评论 -
求n阶乘
题目:Description输入一个正整数n,求n!n!=123*…*nInput输入一个正整数nOutput一行,包行一个整数代表n阶乘的值Sample Input5Sample Output120HINT5=1* 2 * 3 * 4* 5 =120思路:看到这道题,我最先想到了for循环,于是一篇暴力的不能再暴力的的代码出现了。#include <bit...原创 2019-07-12 16:03:03 · 396 阅读 · 0 评论 -
Knight Moves
题目:Description在一个8*8的棋盘上,一只中国象棋中的马要从一个点跳到另一个点。问最少需要多少步。Input整个测试组由多组数据组成,请做到文件底结束。对于每组数据,前两个坐标代表出发点,后两个代表结束点。注意坐标第一位为a至h中某个字母,第二位为1到8某个数字。Output对于每个测试请输出"To get from xx to yy takes n knight mov...原创 2019-07-17 09:59:11 · 1222 阅读 · 0 评论 -
狼和羊
题目:Description米基家的后院养着一群羊,米基由于疲劳睡着了,这时一群饿狼钻进了后院开始攻击羊群,后院是由许多个方格构成的长方形区域,每个方格中用字符‘?’表示空地,‘#’表示栅栏,‘o’表示羊,‘v’表示狼,羊和狼所在的格子都是空地。如果从一个空地A沿着水平方向或垂直方向经过一系列的空地能够到达空地B,则称空地A和空地B属于同一个羊圈。对于能够逃离后院的空地我们认为它不属于任...原创 2019-07-22 09:47:48 · 508 阅读 · 0 评论 -
马的遍历-DFS
题目:Description中国象棋大家都玩过吧!!!现在有只小马迷路了,它现在在0,0位置,它的家在m,n位置(棋盘大小为m*n),现规定小马只能往右走,请聪明的你帮帮小马算一下回到家有几种方案?Input家的位置m,n 比如4,8 1=<m,n<=200Output一个整数即方案数Sample Input4 8Sample Output37...原创 2019-07-10 08:41:50 · 1188 阅读 · 0 评论