C++
文章平均质量分 58
SSL_wyd
成功不是将来才有的,而是从决定去做的那一刻起,持续累积而成。
展开
-
YBTOJ高效进阶递推算法课堂过关T4:传球游戏——2021-06-05第二更
YBTOJ高效进阶递推算法课堂过关T4:传球游戏题面题目描述上体育课的时候,小蛮的老师经常带着同学们一起做游戏。这次,老师带着同学们一起做传球游戏。游戏规则是这样的: 个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个同学可以把球传给自己左右的两个同学中的一个(左右任意),当老师再次吹哨子时,传球停止,此时,拿着球没有传出去的那个同学就是败者,要给大家表演一个节目。聪明的小蛮提出一个有趣的问题:有多少种不同的传球方法可以使得从小蛮手里开始传的球,传m次以后,又回到小蛮手原创 2021-06-05 21:46:10 · 472 阅读 · 1 评论 -
YBTOJ高效进阶递推算法课堂过关T3:数的划分——2021-06-05第一更
YBTOJ高效进阶递推算法课堂过关T3:数的划分题面题目描述将整数n分成k份,且每份不能为空,任意两个方案不相同(不考虑顺序)。例如:n=7,k=3,下面三种分法被认为是相同的:1,1,5; 1,5,1; 1,1,5.问有多少种不同的分法。输入格式两个整数,n和k。输出格式输出不同的分法数。样例输入样例7 3输出样例4数据范围6<n≤200,2≤k≤6。解法1、DFS作为一个蒟蒻,看到“方案数”这个词和数据范围我第一时间想到的是dfs,每次都判断一下当前的数还够不够分原创 2021-06-05 14:39:52 · 218 阅读 · 0 评论 -
YBTOJ高效进阶递推算法课堂过关T1:错排问题——2021-06-04更
YBTOJ高效进阶递推算法课堂过关T1:错排问题题面:题目描述求多少个 n个数的排列A ,满足对于任意的 i(1≤i≤n)Ai≠i。输入格式一个整数 n。输出格式一个整数 ,表示答案。样例输入样例2输出样例1数据范围1≤n≤20思路看到这题我第一个反应是dfs(深搜),毕竟数据最大才20,深搜只要剪枝就可以过。同时我还想起一道深搜题:全排列问题。如果用全排列的解法再加上一个判断是否能过呢,我试了一下,爆了一半的点。但这也并不是毫无收获,因为在一开始我想找到递推公式时我曾原创 2021-06-04 23:45:33 · 294 阅读 · 0 评论 -
深搜10:【SSL】1643.混乱的秩序——2021-05-02第四更
深搜10:【SSL】1643.混乱的秩序题目:题目描述课间操时间到了,各班都站成了一行。本来每个班是应该按身高从低到高站队的,但是有部分同学站错了地方,使得有些同学的前面还有人比他的身高更高,这样就导致整个队形看起来很混乱。如果每两个人出现这种情况,我们就记混乱度为1,请你计算出每个班的混乱度为多少?输入数据包含多个班。每个班的第一行含有一个整数 n(0≤n<500000),表示该班的人数。接下来n行每行有一个整数ai(0≤ai≤10^9),表示该班排队后每个同学的身高。当某班人数原创 2021-05-02 23:29:06 · 260 阅读 · 0 评论 -
深搜9:【SSL】1648.登山——2021-05-02第三更
深搜9:【SSL】1648.登山题目:题目描述小b周末和同学共 n 人去爬山,等爬到山顶的时候大家已经累的不想再走路下山了,于是决定乘坐缆车下山。每辆缆车的最大载重量为 w,现在已知所有同学的体重,请问至少需要多少辆缆车才能将他们全部运送下山?输入第1行:包含两个用空格隔开的整数,n 和 w。接下来n行,表示每位同学的体重c。1≤n≤181≤ci≤w≤10^8输出一个整数,表示最少需要的缆车数。样例输入样例5 19961219941229输出样例2思路:这道题其原创 2021-05-02 17:02:44 · 236 阅读 · 0 评论 -
深搜8:【SSL】1702.邻差数——2021-05-02第二更
深搜8:【SSL】1702.邻差数题目:题目描述小Y上课摸鱼的时候无聊,就在纸上数数,从1写到999999999,显然这样他的纸是不够用的,而且一节课肯定也不够用,所以他决定只写下那些长度为 N 的,而且相邻两个数码的差值为 K 的非负整数。特别提示的是,数字0本身算长度为1的数字,但是前导零要忽略,比如070算长度为2。输入两个数字N,K。其中:1<= N <= 150<= K <= 9输出以从小到大的顺序输出所有满足条件的数字在一行里,数字之间用一个空格隔开原创 2021-05-02 08:43:51 · 273 阅读 · 1 评论 -
深搜7:【SSL】1329.最大平台——2021-05-02第一更
深搜7:【SSL】1329.最大平台题目:题目描述:下面是一个4x4的矩阵,它的特点是:1、矩阵的元素都是正整数。2、数值相等的元素相邻。这样,这个矩阵就形成了一级级“平台”,其最大的“平台”面积为8,高度(元素值)为6.若有一个N*N的矩阵也具有上面矩阵的特点,求矩阵最大“平台”的面积和高度。6 6 6 71 6 3 71 6 6 76 6 7 7输入第一行为N(1<=N<=100),以下为N*N的矩阵。输出第一行为平台的最大面积;第二行为元素值。样例输入样例原创 2021-05-02 07:35:57 · 1422 阅读 · 0 评论 -
深搜6:【SSL】1328.泡泡龙——2021-05-01更
深搜6:【SSL】1328.泡泡龙题目:题目描述:这是一个简化版的网络游戏,在一个N×N方块构成的棋盘中,每个方块均涂上红、黄、蓝、绿(记为1、2、3、4)中的一种颜色,游戏者可以在最底行任意找一个方块,用鼠标双击这个方块,于是该方块及与之相邻(即上、下、左、右四个方向上有公共边)的所有的同色方块均被消掉,因而下方失去支持的方块将会自动落下填补空位。样例给出一个4*4的棋盘样例,当游戏者双击最底层左边第二个方块后,将会形成输出结果的布局。你对任务是编写一个泡泡龙模拟程序,对于给定的一个初始棋盘,计算原创 2021-05-01 17:30:16 · 347 阅读 · 0 评论 -
深搜5:【SSL】1326.货物装箱——2021-04-04第五更
深搜5:【SSL】1326.货物装箱题目:桐桐有N件货物需要运送到目的地,它们的质量和价值分别记为:质量:W1,W2,…,Wn;价值:V1,V2,…,Vn;已知某辆货车的最大载货量为X,并且当他只能运送一趟货物,这辆货车应该运送哪些货物,才能在不超载的前提下使运送的价值最大?输入第1行是一个实数,表示货车的最大载货量X( 1 < X <= 100)。第2行是一个正整数,表示待运送的货物数N( 1 < N <= 20)。后面N行每行是两个用空格隔开的实数,分别表示第1原创 2021-04-04 15:48:56 · 291 阅读 · 0 评论 -
深搜4:【SSL】1632.骑士游历——2021-04-04第四更
深搜4:【SSL】1632.骑士游历题目:马在中国象棋以日字形规则移动。请编写一段程序,给定n×m大小的棋盘,以及马的初始位置(x,y),要求不能重复经过棋盘上的同一个点,计算马可以有多少途径遍历棋盘上的所有点。输入包含一行,为四个整数,分别为棋盘的大小以及初始位置坐标n,m,x,y。(0≤x≤n-1,0≤y≤m-1, m < 10, n < 10)。输出输出为一个整数,表示马能遍历棋盘的路径总数,0为无法遍历一次。输入样例5 4 0 0输出样例32思路:这是一道很经典原创 2021-04-04 15:30:42 · 209 阅读 · 0 评论 -
深搜3:【SSL】1322.字符序列——2021-04-04第三更
深搜3:【SSL】1322.字符序列题目:从三个元素的集合A,B,C中选取元素生成一个N个字符组成的序列,使得没有两个相邻的子序列相同。例:N=5时ABCBA是合格的,但ABCBC和ABABC是不合格的,因为其中有子序列BC、AB是相同的。输入一个整数n(1<=n<=18)输出满足条件的N个字符的序列总数。输入样例3输出样例12思路:题干中要求说“没有两个相邻的子序列相同”,那么就可以知道,每次递归时都要判断加上这个字母的序列是否合法,那么就要写一个check函数,每次原创 2021-04-04 15:13:56 · 570 阅读 · 0 评论 -
深搜2:【SSL】1629.组合的输出——2021-04-04第二更
深搜2:【SSL】1629.组合的输出题目:排列与组合是常用的数学方法,其中组合就是从n个元素中抽出r个元素(不分顺序且r≤n),我们可以简单地将n个元素理解为自然数1,2,…,n,从中任取r个数。现要求你用递归的方法输出所有组合。例如n=5,r=3,所有组合为:1 2 31 2 41 2 51 3 41 3 51 4 52 3 42 3 52 4 53 4 5输入一行两个自然数n、r (1 < n < 21,1≤r≤n)。输出每行 r 个用空格隔开的数,按字原创 2021-04-04 14:56:14 · 232 阅读 · 0 评论 -
深搜1:【SSL】1631.自然数的拆分——2021-04-04第一更
深搜1:【SSL】1631.自然数的拆分题目:任何一个大于1的自然数n,总可以拆分成若干个小于n的自然数之和。现在给你一个自然数n,要求你求出n的拆分成一些数字的和。每个拆分后的序列中的数字从小到大排序。然后你需要输出这些序列,其中字典序小的序列需要优先输出。输入一个数,表示待拆分的自然数n。(n<=8)输出若干行该数的加法算式。输入样例7输出样例7=1+1+1+1+1+1+17=1+1+1+1+1+27=1+1+1+1+37=1+1+1+2+27=1+1+1+47=1原创 2021-04-04 14:45:33 · 318 阅读 · 0 评论 -
【未完成】二分:【SSL】1601.开车出行——2021-03-19更
【未完成】【SSL】1601.开车出行题目:为了缓解交通压力,某国脑洞大开,竟然成功研发出了空中汽车。为了保证夜间行驶的安全,在各个路段安装了一系列路灯进行照明。已知路灯的照明范围是一个以路灯所在的点为顶点的道路最低的直线为底边的等腰直角三角形。汽车的行驶区域必须有路灯的照明。我们为了简化问题将道路简化为一条直线。建立平面直角坐标系,并定义道路的最低点所在的直线为x轴。现在给定所有路灯在直角坐标系的位置以及一个车辆需要从点a行驶到点b。问这辆汽车所能行驶的最高高度。如下图所示: 三个路灯的坐标分别原创 2021-03-19 22:58:43 · 271 阅读 · 0 评论 -
背包问题1:【SSL】1059.01背包问题——2021-03-10更
背包问题1:【SSL】1059.01背包问题题目:一个旅行者有一个最多能用m公斤的背包,现在有n件物品,它们的重量分别是W1,W2,…,Wn,它们的价值分别为C1,C2,…,Cn.若每种物品只有一件求旅行者能获得最大总价值。输入第1行:两个整数,M(背包容量,M<=200)和N(物品数量,N<=30);第2至N+1行:每行二个整数Wi,Ci,表示每个物品的重量和价值。输出仅一行,一个数,表示最大总价值。输入样例10 42 13 34 57 9输出样例12思原创 2021-03-10 18:23:31 · 204 阅读 · 0 评论 -
递归6:【SSL】1564.2的幂次方——2021-03-09更
递归6:【SSL】1564.2的幂次方题目:任何一个正整数都可以用2的幂次方表示.例如:137=2^7 + 2^3 + 2^0同时约定次方用括号来表示,即a^b可表示为a(b)由此可知,137可表示为:2(7)+2(3)+2(0)进一步:7=2^2 + 2 + 2^0 (2^1用2表示)3=2 + 2^0所以最后137可表示为:2(2(2)+2+2(0))+2(2+2(0))+2(0)又如:1315=2^10 + 2^8 + 2^5 + 2 + 1所以1315最后可表示为:2(2(2+2原创 2021-03-09 18:37:15 · 221 阅读 · 0 评论 -
递归5:【SSL】1169 装箱问题——2021-03-06更
递归5:【SSL】1169 装箱问题题目:有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30,每个物品有一个体积(正整数)。要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。输入样例2468 312797输出样例0思路:这道题目的话其实思路好想,但是因为数据太大所以要注意优化。认真思考,不难发现一个箱子只有2中方法,放或不放。举个例子,用1表示放,0表示不放,假设有3个箱子,那么就有8种方法:11111010110001原创 2021-03-06 13:12:25 · 457 阅读 · 3 评论 -
递归4:【SSL】1562 分形——2021-03-03更
递归4:分形题源:【SSL】1562题目:分形(fractal)是物体在数量上,内容上“自相似”的一种数学抽象。一个盒分形(box fractal)定义如下:1度的盒分形为X2度盒的分型为如果B(n - 1)表示n – 1度的盒分形,则n度的盒分形递归定义如下:请画出n度的盒分形的图形。输入由若干测试用例组成,每行给出一个不大于7的正整数。输入的最后一行以一个负整数-1表示输入结束。输出对于每个测试用例,输出用’X’标记的盒分形。注意’X’是大写字母。在每个测试用例后输出包含一原创 2021-03-03 18:19:25 · 337 阅读 · 1 评论 -
递归2:【SSL】1565——2021-03-02第一更
递归2:基因序列题目:2020年1月,COVID-19新冠病毒在中国爆发,在国人众志成城抵抗病毒的同时,疾病专家也第一时间分离毒株得到了它的基因序列,由于基因序列可能会非常长,为了方便把它传递给世界上其它国家的专家,决定把基因序列中的连续子串进行缩写。比如“ GTGTGTGT ”会缩写成 “ [4GT] “或者” [2[2GT]] ", 类似于后面这种的缩写成为双重缩写,如果是“[2[2[2GT]]]”则是三重的。通过观察发现,该基因序列不会超过十重缩写,并且缩写的中的数字均在1~99之间。现在假设原创 2021-03-02 18:21:05 · 165 阅读 · 0 评论 -
递归1——2021-02-27更
递归1T1 圆环套圆环题目:一个有趣的圆环套圆环函数被定义如下:G(n)=n-G(G(n-1)) (n是正整数)G(0)=0请你计算出圆环函数的值。输入一个非负整数n,n<=200。输出一个正整数,即G(n)。输入样例3输出样例2思路:这道题我一开始的想法很简单,就是直接递归题目中给的函数就行了,但是后来发现会TLE,但又想不通,然后我们班一个神犇跟我说要用记忆化搜索,但记忆化搜索又是神马东西呢,下一题再一块讲了。代码:#include<bits/stdc原创 2021-02-27 14:29:34 · 302 阅读 · 0 评论 -
二分7:实数二分——2021-02-16更
这篇写二分的另一种类型,实数二分。二分7——实数二分T1 消息传递题目:有N个人在一直线上,第i个人的位置为Di,满足Di≤Di+1。最初只有第1个人(在最左边)知道消息。在任意时刻,每个人可以以每秒1单位的速度向左或向右移动,或者停在原地。如果两个人的距离不超过K,那么消息就可以瞬间进行传递。求所有人都知道消息最少需要多少时间。输入第一行一个正实数K,表示最大的消息传递距离;第二行一个整数N,表示有N个人;以下N行,每行一个正实数,表示每个人的位置,第i行表示第i个人的位置Di。输原创 2021-02-16 22:32:57 · 823 阅读 · 0 评论 -
二分6:豌豆射手——2021-02-12更
今天是春节,祝所有人在新的一年牛气冲天,心想事成。二分6:豌豆射手题目:新版的植物大战僵尸游戏中,有一个豌豆射手战士,它每次发射出的一枚豌豆就能消灭一个僵尸,尽管杀伤力大,但它却有两个缺点:不能连续发射豌豆,必须要等待 k 秒才能发射下一枚豌豆。有射程限制,必须在射程 m 内才能击中僵尸。僵尸先生是始终都在朝向豌豆射手以单位速度1直线前进的,如果在到达豌豆射手的位置时都还不能消灭这个僵尸,那就 “ game over ”了。最开始的时候,豌豆射手就拥有一枚豌豆,现在你作为玩家,要计算出等待原创 2021-02-12 22:34:29 · 1389 阅读 · 0 评论 -
AcWing寒假入门班:分巧克力——2021-02-09更
AcWing寒假入门班:分巧克力原题传送:AcWing 1227. 分巧克力题目:儿童节那天有 K 位小朋友到小明家做客。小明拿出了珍藏的巧克力招待小朋友们。小明一共有 N 块巧克力,其中第 i 块是 Hi×Wi 的方格组成的长方形。为了公平起见,小明需要从这 N 块巧克力中切出 K 块巧克力分给小朋友们。切出的巧克力需要满足:形状是正方形,边长是整数,大小相同。例如:一块 6×5 的巧克力可以切出 6 块 2×2 的巧克力或者 2 块 3×3 的巧克力。当然小朋友们都希望得到的巧克力尽原创 2021-02-09 17:00:38 · 130 阅读 · 0 评论 -
AcWing寒假入门班:找硬币——2021-02-08第二更
AcWing寒假入门班:找硬币原题传送:AcWing 1532. 找硬币题目:伊娃喜欢从整个宇宙中收集硬币。有一天,她去了一家宇宙购物中心购物,结账时可以使用各种硬币付款。但是,有一个特殊的付款要求:每张帐单,她只能使用恰好两个硬币来准确的支付消费金额。给定她拥有的所有硬币的面额,请你帮她确定对于给定的金额,她是否可以找到两个硬币来支付。输入第一行包含两个整数 N 和 M,分别表示硬币数量以及需要支付的金额。第二行包含 N 个整数,表示每个硬币的面额。输出一行,包含两个整数 V1,V2原创 2021-02-08 20:35:53 · 123 阅读 · 0 评论 -
AcWing寒假入门班:阶乘(高精度)——2021-02-08第一更
AcWing寒假入门班:阶乘题目:N 的阶乘(记作 N!)是指从 1 到 N(包括 1 和 N)的所有整数的乘积。阶乘运算的结果往往都非常的大。现在,给定数字 N,请你求出 N! 的最右边的非零数字是多少。例如:5!=1×2×3×4×5=120,所以 5! 的最右边的非零数字是 2。输入共一行,包含一个整数 N。输出一个整数,表示 N! 的最右边的非零数字。数据范围1≤N≤1000输入样例7输出样例4思路:这道题目的解法就是高精度,求出n的阶乘之后从末位开始往前找非0位,原创 2021-02-08 17:55:06 · 186 阅读 · 0 评论 -
AcWing寒假入门班:a^b(a的b次方)快速幂,取余运算——2021-02-05更
AcWing寒假入门组1T1 货仓选址题目:在一条数轴上有 N 家商店,它们的坐标分别为 A1~AN。现在需要在数轴上建立一家货仓,每天清晨,从货仓到每家商店都要运送一车商品。为了提高效率,求把货仓建在何处,可以使得货仓到每家商店的距离之和最小。输入第一行输入整数N。第二行N个整数A1~AN。输出一个整数,表示距离之和的最小值。数据范围1≤N≤1000000≤Ai≤40000输入样例46 2 9 1输出样例12思路:这道题目核心考的就是中位数排序,其实之前的一篇博文里原创 2021-02-05 23:10:15 · 447 阅读 · 4 评论 -
二分4——2021-02-04更
二分4——二分答案T1 营救题目:一座摩天大楼起了大火,n个人都被困在了顶层狭长的走廊上,大家排着长长的队伍等着逃离险境。但火势很猛,消防员升起的救生舱只有m次运人下来的机会,并且每次运的人总重量还不能太重,避免将救生舱压垮。此时如何将这一排人分隔成m个连续的小组,(大家遵守逃生守则,没有人会往前插队),并且让这m个组中总重量最重的那个组的重量尽量小。这样才能快速安全的将大家都救离险境。现在告诉你这n个人的体重,请你找出一种分组方法,让这m个组中总重量最重的那个组的重量尽量小,并输出这个组的总重量原创 2021-02-04 22:55:08 · 650 阅读 · 1 评论 -
二分3——2021-02-03第二更
二分3——二分答案T1 母鸡下蛋(解法2)题目:题目二分2那里有,就不敲出来了,要看题目的话……这里→ 二分2——2021-02-02更思路:解法1中我们用的是二分查找,这次用二分答案来做,每次都求一个x,再写一个函数用来判断x个鸡窝能否装完这些蛋,如果可以,则说明目前x个鸡窝满足条件,那就往小设置x,如果不可以,则将x往大设置。最后输出最小的x。代码:#include<bits/stdc++.h>using namespace std;long long n,a[10000原创 2021-02-03 22:57:57 · 245 阅读 · 0 评论 -
二分+前缀和——2021-02-03第一更
T1 批改作业题目:现在有 n 位同学上交了作业,每位同学的作业本上都完成了数量不等的习题,由于时间有限,老师只能批改连续的作业,而且不超过 m 道题,还要尽可能多改几个同学的作业。 现在,请你帮助老师决定,要批改哪一段同学的作业。输入第一行,包含两个正整数n和m。第二行包含n个用空格隔开的数,第i个数表示第i个同学完成的习题数。输出一行,共两个数,表示批改的起点和终点编号,中间用空格分开。批改的方向总是从编号小的到编号大的。另外,若有长度相同的,输出起点编号较小的答案。数据保证至少有答案存原创 2021-02-03 07:39:28 · 331 阅读 · 1 评论 -
二分2——2021-02-02更
二分2T1 A-B问题题目:现有 n 个从小到大排列的整数,现在给你一个数 c, 要你在这 n 个数中找出两个数 a 和 b,使得 a-b=c ,请你计算出这样的方案有多少种?输入第一行2个正整数:n,c。(1<=n<=10^5,0<=c<= 10^9)第二行包含n个空格隔开的整数ai。(0<=ai<=10^9)输出一个整数,表示该串数中包含的所有满足A-B=C的数对的方案数。输入样例5 22 2 4 8 10输出样例3思路:这道题目说的是要原创 2021-02-02 23:16:26 · 414 阅读 · 0 评论 -
二分1——2021-02-01更
二分1——二分模板T1 二分查找(一)题目:输入一个整数n和n个整数,保证这n个整数已经按照从小到大进行排序。然后输入一个整数q(q <= 100000)代表q次查询。接下来n行,每一个数 x, 代表一次查询。对于每次查询,判断该数 x 是否在之前输入的 n 个整数中出现过。如果出现,输出一行"Yes",否则输出"No"。输入第一行:一个整数n(n <= 100000)。第二行:n个空格隔开的整数ai(1 <= ai <= 10^9)。第三行:一个整数q。接下来原创 2021-02-01 22:07:44 · 855 阅读 · 1 评论 -
差分与前缀和2——2021-01-30第二更
差分与前缀和2差分T1 车票题目:考虑一条高铁线路 G39,这条线路依次经过 N 个火车站,编号为 1,2,3,……,n。现在你得到了关于未来 K 天的 M 条订票信息,问你每天至少安排多少个座位可以满足这些订票信息。每条订票信息形如 i j k, 代表在第 i 天出行,从 j 火车站上车,从 k 火车站下车。注意座位可以重复使用,但不能两个人坐一个座位,如果一条信息是1 1 3,另一条信息是 1 3 5,那么只安排一个座位即可 (第一位乘客在 3 号火车站下车,同时第二位乘客在 3 号火车站原创 2021-01-30 22:37:07 · 393 阅读 · 5 评论 -
C++小游戏1——2021-01-30第一更
第一个自己写的小游戏——数字炸弹。#include<stdio.h>#include<stdlib.h>#include<time.h>#define random(x) (rand()%x)void ts(){ long long x=0; for(long long i=1;i<=100000000;i++) x++;}int main(){ int t; printf("%s\n","要玩游戏请按1,退出请按0"); scanf原创 2021-01-30 20:18:03 · 193 阅读 · 2 评论 -
贪心2——2021-01-29更
贪心2——SSL 贪心板块T1 备战考试题目:马上快期末考试了,各科都安排了很多课后训练,但是这些时间有可能会有冲突。小b为了考出好成绩,他想在时间不冲突的情况下,参加训练的越多越好。现在小b拿到了所有训练的时间段安排,请你计算他最多能参加多少项训练。输入第一行是一个数 n ( 1<= n <=10^6),表示安排的训练数。接下来 n 行, 每行两个整数 ai , bi,表示各个训练的开始和结束时间。 ( 0<=ai < bi<=10^6)输出一个整数,表示原创 2021-01-29 22:39:40 · 501 阅读 · 0 评论 -
差分与前缀和1——2021-01-24更
差分与前缀和差分:T1 堆叠草堆题目:Bessie对她自己最近在农场周围的恶作剧感到抱歉,于是她同意帮助Farmer John堆叠新送达的一批干草捆。开始时有N(N是奇数)个空草堆,标记为1…N。FJ将会给Bessie包含K条指令的序列,每条指令的格式为"A B",表示Bessie应该在草堆A…B中每一个草堆顶部新放一捆干草。例如,如果Bessie听到指令"10 13",那么她应该在草堆10,11,12和13上各新放一捆干草。在Bessie完成了FJ的所有指令后,FJ想要知道N个草堆高度的中位数原创 2021-01-24 22:22:47 · 458 阅读 · 1 评论 -
排序1与分解质因数——2021-01-25更
分解质因数T1 分解质因数题目:任何一个数都可以分解为一个或多个质数的乘积,这些质数称为这个数的质因数。现在输入一个正整数n,输出它质因数乘积的形式。比如,12=2 * 2 * 3,2和3均为质数。输入一行,包含一个正整数n(n<=10^14)。输出一行,为一个数分解为质因数乘积的形式,每个质因数由小到大输出。输入样例12输出样例12=2 * 2 * 3思路:其实我做这道题的时候,第一时间是想到循环一遍求出它的因数,再判断质数,但是n最大是10^14,所以直接就TLE了,原创 2021-01-25 21:45:42 · 426 阅读 · 1 评论 -
排序2——2021-01-26更
昨天的我已经写了排序1,今天接着写有关排序的题目。排序2T1 近似排序题目:有个人是从火星来的,在他世界里所有的数字都是反的,比如我们看到的30,在他看来却是3,我们看到的29,在他看来是92,因此他认为29是大于30的。现在他拥有一个区间内的数字,请按照他的规则进行由小到大排序。输入一行,包含两个用空格隔开的自然数,这两个数给出了待排序数的范围,其中0<n<=m<1000000000,两个数之差不超过100。输出排序后的数据,每行一个数。输入样例22 39输出样例原创 2021-01-26 22:18:09 · 327 阅读 · 1 评论 -
排序3——2021-01-27更
排序3T1 拯救花园题目:一天,晨晨发现自己的 n(2≤n≤100)只兔子跑到自己的花园里面,它们在尽情的吃 着她的宝贝花卉。晨晨看在眼里痛在心里,她现在只能把兔子逐个的抓回笼子里面。而送 每只兔子回去的时间都不同,例如送第 i 只兔子回去需要 ti(1≤ti≤100)单位时间,那么 晨晨送第 i 只兔子来回共需要花费 2*ti 单位时间,另外每一只兔子单位时间的破坏力都不同,例如第 i 只兔子单位时间内破坏 di (1≤di≤100)朵花。现在的问题是,晨晨如何安排送这 n 只兔子回笼子才能使这些原创 2021-01-27 22:06:19 · 814 阅读 · 0 评论 -
贪心1——2021-01-28更
这两天写贪心问题集合的博客。贪心1——SSL 贪心板块T1 删数问题题目:现有一个高精度的正整数 n(<=240位) ,去掉其中任意 s 个数字后,剩下的数字按原左右顺序组成一个新数。请根据给出的 n 和 s ,请寻找一种方案,使得剩下的数字组成的新数最小。输入第1行:一个正整数n。第2行:s(s < n的位数)。输出最后剩下的最小数。输入样例1754384输出样例13思路:第一次做的时候,我的想法很简单,就是删掉前s大的数字,再输出,但是,显然我的思路错了,我原创 2021-01-28 22:58:46 · 175 阅读 · 1 评论