![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
历练题库
大数据进行时
这个作者很懒,什么都没留下…
展开
-
洛谷 P1111 修复公路(并查集)
P1111 修复公路时间限制1.00s 内存限制125.00MB题目背景A地区在地震过后,连接所有村庄的公路都造成了损坏而无法通车。政府派人修复这些公路。题目描述给出A地区的村庄数N,和公路数M,公路是双向的。并告诉你每条公路的连着哪两个村庄,并告诉你什么时候能修完这条公路。问最早什么时候任意两个村庄能够通车,即最早什么时候任意两条村庄都存在至少一条修复完成的道路(可以由多条公路连成一条道路)输入格式第1行两个正整数N,M下面M行,每行3个正整数x, y, t,告诉你这条公路连着x,y两个村原创 2020-10-16 20:45:18 · 145 阅读 · 0 评论 -
洛谷 P1757 通天之分组背包(动规分组背包)
P1757 通天之分组背包时间限制1.00s 内存限制125.00MB题目背景直达通天路·小 A 历险记第二篇题目描述自 01 背包问世之后,小 A 对此深感兴趣。一天,小 A 去远游,却发现他的背包不同于 01 背包,他的物品大致可分为 k 组,每组中的物品相互冲突,现在,他想知道最大的利用价值是多少。输入格式两个数 m,n,表示一共有 n 件物品,总重量为 m。接下来 n 行,每行 33 个数 a_i,b_i,c_i,表示物品的重量,利用价值,所属组数。输出格式一个数,最大的利用价值原创 2020-10-15 21:01:55 · 155 阅读 · 0 评论 -
洛谷 P1258 小车问题(应用)
P1258 小车问题时间限制1.00s 内存限制125.00MB题目描述甲、乙两人同时从 A 地出发要尽快同时赶到 B 地。出发时 A 地有一辆小车,可是这辆小车除了驾驶员外只能带一人。已知甲、乙两人的步行速度一样,且小于车的速度。问:怎样利用小车才能使两人尽快同时到达。输入格式仅一行,三个实数,分别表示 AB 两地的距离 s,人的步行速度 a,车的速度 b。输出格式两人同时到达 B 地需要的最短时间,保留 6 位小数。输入输出样例输入 #1120 5 25输出 #19.60000原创 2020-10-14 20:22:56 · 657 阅读 · 2 评论 -
洛谷 P1049 装箱问题 (01背包)
P1049 装箱问题时间限制1.00s 内存限制125.00MB题目描述有一个箱子容量为VV(正整数,V≤20000),同时有nn个物品(0<n≤30,每个物品有一个体积(正整数)。要求nn个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。输入格式1个整数,表示箱子容量1个整数,表示有n个物品接下来n行,分别表示这n个物品的各自体积输出格式1个整数,表示箱子剩余空间。输入输出样例输入 #12468312797输出 #10#include<bi原创 2020-10-14 17:10:50 · 161 阅读 · 0 评论 -
Openjudge 贪心算法
这里写目录标题1038:圣诞老人的礼物-Santa Clau’s Gifts描述输入输出1039:电影节描述输入输出1038:圣诞老人的礼物-Santa Clau’s Gifts总时间限制: 1000ms 内存限制: 65536kB描述圣诞节来临了,在城市A中圣诞老人准备分发糖果,现在有多箱不同的糖果,每箱糖果有自己的价值和重量,每箱糖果都可以拆分成任意散装组合带走。圣诞老人的驯鹿最多只能承受一定重量的糖果,请问圣诞老人最多能带走多大价值的糖果。输入第一行由两个部分组成,分别为糖果箱数正整数n(原创 2020-10-11 17:40:27 · 425 阅读 · 0 评论 -
洛谷 P1708 天然气井(简单AC)
P1708 天然气井时间限制1.00s 内存限制31.25MB题目描述Mary试图控制成都的天然气市场。专家已经标示出了最好的天然气井和中转站在成都的地图。现在需要将中转站和天然气井连接起来。每个中转站必须被连接到正好一个钻油井,反之亦然。Mary特别指名,建设的天然气管道必须从某个天然气井开始,向南或者向东建设。Mary想知道怎么连接每个天然气井和中转站,使得需要的天然气管道的总长度最小。输入格式输入文件的第一行为一个正整数n(2<=n<=50000),表示天然气井的数量(中转站的原创 2020-10-11 17:07:32 · 352 阅读 · 0 评论 -
洛谷 P2660zzc种田(贪心)
P2660 zzc 种田时间限制1.00s 内存限制125.00MB题目背景可能以后 zzc就去种田了。题目描述田地是一个巨大的矩形,然而zzc 每次只能种一个正方形,而每种一个正方形时zzc所花的体力值是正方形的周长,种过的田不可以再种,zzc很懒还要节约体力去泡妹子,想花最少的体力值去种完这块田地,问最小体力值输入格式两个正整数x,y,表示田地的长和宽输出格式输出最小体力值输入输出样例输入 #11 10输出 #140输入 #22 2输出 #28说明/提示1<原创 2020-10-11 14:53:55 · 368 阅读 · 0 评论 -
洛谷 P1102A-B数对(二分查找)
P1102 A-B 数对时间限制1.00s 内存限制125.00MB题目描述出题是一件痛苦的事情!相同的题目看多了也会有审美疲劳,于是我舍弃了大家所熟悉的 A+B Problem,改用 A-B 了哈哈!好吧,题目是这样的:给出一串数以及一个数字 C,要求计算出所有 A - B = C 的数对的个数(不同位置的数字一样的数对算不同的数对)。输入格式输入共两行。第一行,两个整数 N, C。第二行,N 个整数,作为要求处理的那串数。输出格式一行,表示该串数中包含的满足 A - B = C 的原创 2020-10-10 19:40:42 · 539 阅读 · 1 评论 -
洛谷 P1115最大字段和(dp)
P1115 最大子段和时间限制1.00s 内存限制125.00MB题目描述给出一个长度为 n 的序列 a,选出其中连续且非空的一段使得这段和最大。输入格式第一行是一个整数,表示序列的长度 n。第二行有 n 个整数,第 i 个整数表示序列的第 i 个数字 a i 。输出格式输出一行一个整数表示答案。输入输出样例输入 #172 -4 3 -1 2 -4 3输出 #14说明/提示样例 1 解释选取 [3, 5] 子段{3,−1,2},其和为 44。数据规模与约定对于40%原创 2020-10-09 17:44:20 · 234 阅读 · 0 评论 -
洛谷 P1657 选书(dfs)
P1657 选书时间限制 1.00s 内存限制 125.00MB题目描述学校放寒假时,信息学奥赛辅导老师有1,2,3……x本书,要分给参加培训的x个人,每人只能选一本书,但是每人有两本喜欢的书。老师事先让每个人将自己喜欢的书填写在一张表上。然后根据他们填写的表来分配书本,希望设计一个程序帮助老师求出所有可能的分配方案,使每个学生都满意。输入格式第1行:一个数x第2行~第1+x行:每行两个数,表示ai喜欢的书的序号输出格式只有一个数:总方案数total。输入输出样例输入 #151 3原创 2020-10-07 16:38:19 · 187 阅读 · 0 评论 -
Openjudge 1024:公共子序列(dp)
1024:公共子序列总时间限制: 1000ms 内存限制: 65536kB描述我们称序列Z = < z1, z2, …, zk >是序列X = < x1, x2, …, xm >的子序列当且仅当存在 严格上升 的序列< i1, i2, …, ik >,使得对j = 1, 2, … ,k, 有xij = zj。比如Z = < a, b, f, c > 是X = < a, b, c, f, b, c >的子序列。现在给出两个序列X和Y,你的任务原创 2020-10-07 15:07:53 · 139 阅读 · 0 评论 -
洛谷 P3613 寄包柜(STL)
时间限制1.00s 内存限制125.00MB题目描述输入格式第一行 2 个整数 n 和 q,寄包柜个数和询问次数。接下来 q 个整数,表示一次操作。输出格式对于查询操作时,输出答案。输入输出样例输入 #15 41 3 10000 1145141 1 1 12 3 100002 1 1输出 #11145141#include <bits/stdc++.h>using namespace std;map <int, int> mat[100005]原创 2020-10-06 18:04:46 · 413 阅读 · 0 评论 -
洛谷 P2347 砝码称重
P2347 砝码称重时间限制1.00s 内存限制125.00MB题目描述设有1g、2g、3g、5g、10g、20g的砝码各若干枚(其总重≤1000)输入格式输出格式输入输出样例输入 #11 1 0 0 0 0输出 #1Total=3方法一:将砝码依次装入数组中,2 1 2 2 1 1,装入后重量依次为1,1,2,3,3,5,5,10,20。布尔数组标记装箱数组组合重量,重量作为布尔数组下标。 sign[j+a[i]] = 1;装箱的砝码重量在原有的各重量上增加。原创 2020-10-06 15:14:14 · 278 阅读 · 0 评论 -
洛谷 P2404 自然数的拆分问题(dfs)
P2404 自然数的拆分问题时间限制 1.00s 内存限制 125.00MB题目描述任何一个大于1的自然数n,总可以拆分成若干个小于n的自然数之和。现在给你一个自然数n,要求你求出n的拆分成一些数字的和。每个拆分后的序列中的数字从小到大排序。然后你需要输出这些序列,其中字典序小的序列需要优先输出。输入格式输入:待拆分的自然数n。输出格式输出:若干数的加法式子。输入输出样例输入 #17输出 #11+1+1+1+1+1+11+1+1+1+1+21+1+1+1+31+1+1+2+2原创 2020-10-05 16:23:49 · 533 阅读 · 0 评论 -
Openjudge 1023:最长上升子序列(dp)
1023:最长上升子序列总时间限制: 2000ms 内存限制: 65536kB描述一个数的序列bi,当b1 < b2 < … < bS的时候,我们称这个序列是上升的。对于给定的一个序列(a1, a2, …, aN),我们可以得到一些上升的子序列(ai1, ai2, …, aiK),这里1 <= i1 < i2 < … < iK <= N。比如,对于序列(1, 7, 3, 5, 9, 4, 8),有它的一些上升子序列,如(1, 7), (3, 4, 8)等原创 2020-10-04 20:31:08 · 135 阅读 · 0 评论 -
洛谷 P1590 失踪的7
P1590 失踪的7时间限制 1.00s 内存限制 125.00MB题目描述远古的Pascal人也使用阿拉伯数字来进行计数,但是他们又不喜欢使用7,因为他们认为7是一个不吉祥的数字,所以Pascal数字8其实表示的是自然数中的7,18表示的是自然数中的16。下面计算一下,在正整数n范围以内包含有多少个Pascal数字。输入格式第一行为正整数t,接下来t行,每行一个正整数n(≤2^32-1)。输入的是Pascal数字t≤10000输出格式对于每个正整数n,输出n以内的Pascal数的个数。原创 2020-10-04 15:18:54 · 321 阅读 · 0 评论 -
Openjudge 1005:汉诺塔问题(Hanoi)
汉诺塔问题有三根杆子A,B,C。A杆上有N个(N>1)穿孔圆盘,盘的尺寸由下到上依次变小。要求按下列规则将所有圆盘移至C杆: 每次只能移动一个圆盘; 大盘不能叠在小盘上面。 提示:可将圆盘临时置于B杆,也可将从A杆移出的圆盘重新移回A杆,但都必须遵循上述两条规则。问:如何移?最少要移动多少次?思路: 递归解, 三根杆分别用src(左),mid(中),dest(右)代替。先将n-1个...原创 2020-02-26 17:34:53 · 274 阅读 · 0 评论 -
Openjduge 1021:数字三角形(dp)
1021:数字三角形总时间限制: 1000ms 内存限制: 65536kB描述73 88 1 02 7 4 44 5 2 6 5给出了一个数字三角形。从三角形的顶部到底部有很多条不同的路径。对于每条路径,把路径上面的数加起来可以得到一个和,你的任务就是找到最大的和。注意:路径上的每一步只能从一个数走到下一层上和它最近的左边的那个数或者右边的那个数。输入输入的是一行是一个整数N (1 < N <= 100),给出三角形的行数。下面的N原创 2020-10-03 16:34:55 · 173 阅读 · 0 评论 -
洛谷 P2708 硬币翻转
P2708 硬币翻转时间限制1.00s 内存限制125.00MB题目描述从前有很多个硬币摆在一行,有正面朝上的,也有背面朝上的。正面朝上的用1表示,背面朝上的用0表示。现在要求从这行的第一个硬币开始,将前若干个硬币一起翻面,问如果要将所有硬币翻到正面朝上,最少要进行这样的操作多少次?输入格式一个字符串,由0和1组成,表示硬币状态输出格式一个数,表示要翻转的最少次数输入输出样例输入 #110输出 #12字符串0开头字符串内部0连续处理思路:找出首1位置,判断前缀0,有原创 2020-10-02 18:03:06 · 328 阅读 · 0 评论 -
洛谷 P1002 过河卒(dp)
P1002 过河卒时间限制1.00s 内存限制125.00MB题目描述棋盘上 AA 点有一个过河卒,需要走到目标 BB 点。卒行走的规则:可以向下、或者向右。同时在棋盘上 CC 点有一个对方的马,该马所在的点和所有跳跃一步可达的点称为对方马的控制点。因此称之为“马拦过河卒”。棋盘用坐标表示,AA 点 (0, 0)(0,0)、BB 点 (n, m)(n,m),同样马的位置坐标是需要给出的。现在要求你计算出卒从 AA 点能够到达 BB 点的路径的条数,假设马的位置是固定不动的,并不是卒走一步马走一步原创 2020-10-02 17:07:20 · 507 阅读 · 0 评论