自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 收藏
  • 关注

原创 10.D - Function

对于一个递归函数 �(�,�,�)w(a,b,c)这是个简单的递归函数,但实现起来可能会有些问题。当 �,�,�a,b,c 均为 1515 时,调用的次数将非常的多。你要想个办法才行。注意:例如 �(30,−1,0)w(30,−1,0) 又满足条件 11 又满足条件 22,请按照最上面的条件来算,答案为 11。Input会有若干行。并以 −1,−1,−1−1,−1,−1 结束。Output注意空格。

2023-12-24 12:00:17 497

原创 10.C - 外星密码

解开密码的第一道工序就是解压缩密码,外星人对于连续的若干个相同的子串 XX 会压缩为 [DX][DX] 的形式(�D 是一个整数且 1≤�≤991≤D≤99),比如说字符串 CBCBCBCBCBCBCBCB 就压缩为 [4CB][4CB] 或者[2[2CB]][2[2CB]],类似于后面这种压缩之后再压缩的称为二重压缩。如果是 [2[2[2CB]]][2[2[2CB]]] 则是三重的。保证只包含数字、大写字母、对于 50%50% 的数据:解压后的字符串长度在 10001000 以内,最多只有三重压缩。

2023-12-24 11:42:53 439

原创 10.B - 数的计算

请你求出,一共有多少个合法的数列。两个合法数列 �,�a,b 不同当且仅当两数列长度不同或存在一个正整数 �≤∣�∣i≤∣a∣,使得 ��≠��ai​=bi​。Input输入只有一行一个整数,表示 �n。Output输出一行一个整数,表示合法的数列个数。

2023-12-24 11:35:17 475

原创 10.A - 全排列问题

按照字典序输出自然数 11 到 �n 所有不重复的排列,即 �n 的全排列,要求所产生的任一数字序列中不允许出现重复的数字。由 1∼�1∼n 组成的所有不重复的数字序列,每行一个序列。每个数字保留 55 个场宽。

2023-12-24 11:34:29 410

原创 9.I - DFS剪枝作业题

【代码】9.I - DFS剪枝作业题。

2023-12-17 12:44:08 349

原创 9.H - BFS课上例题

【代码】9.H - BFS课上例题。

2023-12-17 12:42:10 343

原创 9.G - 作业题(建议使用DFS)

已知 �n 个整数 �1,�2,⋯ ,��x1​,x2​,⋯,xn​,以及 11 个整数 �k(�<�k<n)。从 �n 个整数中任选 �k 个整数相加,可分别得到一系列的和。第二行 �n 个整数,分别为 �1,�2,⋯ ,��x1​,x2​,⋯,xn​(1≤��≤5×1061≤xi​≤5×106)。第一行两个空格隔开的整数 �,�n,k(1≤�≤201≤n≤20,�<�k<n)。例如上例,只有一种的和为素数:3+7+19=293+7+19=29。NOIP 2002 普及组第二题。

2023-12-17 12:40:52 359

原创 9.F - DFS剪枝例题

一个如下的 6×66×6 的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。前三行为前三个解,每个解的两个数字之间用一个空格隔开。第四行只有一个数字,表示解的总数。这只是棋子放置的一个解。请编一个程序找出所有棋子放置的解。对于 100%100% 的数据,6≤�≤136≤n≤13。一行一个正整数 �n,表示棋盘是 �×�n×n 大小的。列号 2 4 6 1 3 52 4 6 1 3 5。请输出前 33 个解。最后一行是解的总个数。

2023-12-17 12:39:30 374

原创 9.E - DFS课上例题

输出自然数 11 到 �n 所有不重复的排列,即 �n 的全排列,要求所产生的任一数字序列中不允许出现重复的数字。

2023-12-17 12:38:54 325

原创 9.D - BFS课上例题

它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走,不能斜着走,要求编程序找出从左上角到右下角的最短路线。一个5 × 5的二维数组,表示一个迷宫。左上角到右下角的最短路径,格式如样例所示。

2023-12-17 12:37:35 349

原创 9.C - 作业题(建议使用BFS)

【代码】9.C - 作业题(建议使用BFS)

2023-12-17 12:36:47 807

原创 9.A - 作业题(建议使用BFS)

【代码】9.A - 作业题(建议使用BFS)

2023-12-17 12:33:35 377

原创 8.K - 分解质因子 3

给定一个正整数 �n,设 �=�1×�2×…��n=p1​×p2​×…pk​,其中 ��pi​ 均为质数,对 1≤�<�1≤i<k,��≤��+1pi​≤pi+1​。可以证明,序列 ��pi​ 是唯一的。对每个给定的 �n,请你求出 �1,�2,…��p1​,p2​,…pk​。为了避免输出过大,请你输出 �1,�2,…��p1​,p2​,…pk​ 的。Input。第一行是一个整数,表示测试数据组数 �T。接下来 �T 行,每行一个整数,表示一组数据的 �n。Output。

2023-12-10 16:34:45 544

原创 8.J - 线性筛素数

对于 100%100% 的数据,�=108n=108,1≤�≤1061≤q≤106,保证查询的素数不大于 �n。如题,给定一个范围 �n,有 �q 个询问,每次输出第 �k 小的素数。第一行包含两个正整数 �,�n,q,分别表示查询的范围和查询的个数。接下来 �q 行每行一个正整数 �k,表示查询第 �k 小的素数。本题已更新,从判断素数改为了查询第 �k 小的素数。输出 �q 行,每行一个正整数表示答案。

2023-12-10 16:33:43 344

原创 8.I - 分数

Background万人血书完成(1/10000) →→ 万人血书完成(2/10000)(1/5000) →→ 万人血书完成(2/5000)(1/2500) →→ 万人血书完成(2/2500)(1/1250) →→ 万人血书完成(2/1250)(1/625) ⋯⋯ 以此类推,在可以约分的情况下,“万人血书”很快就能完成。“�x 人血书”的过程可以看成一个函数 �(�)f(x):有一个 0�x0​ 的分数。

2023-12-10 16:32:35 380

原创 8.G - 哥德巴赫猜想

输入一个偶数 �N,验证 4∼�4∼N 所有偶数是否符合哥德巴赫猜想:任一大于 22 的偶数都可写成两个质数之和。如果一个数不止一种分法,则输出第一个加数相比其他分法最小的方案。例如 1010,10=3+7=5+510=3+7=5+5,则 10=5+510=5+5 是错误答案。首先先输出正偶数 2�+22i+2,然后输出等号,再输出加和为 2�+22i+2 且第一个加数最小的两个质数,以加号隔开。输出 �−222N−2​ 行。数据保证,4≤�≤100004≤N≤10000。第一行输入一个正偶数 �N。

2023-12-10 16:30:39 371

原创 8.F - 分解质因子plus

输出数据包含若干行,每行两个正整数 �,�p,a,中间用一个空格隔开。包含 �a 个质因子 �p,要求按 �p 的值从小到大输出。输入数据仅有一行包含一个正整数 �N,�≤10000N≤10000。

2023-12-10 16:29:59 351

原创 8.E - 分解质因子

给定一个正整数 �n,设 �=�1×�2×…��n=p1​×p2​×…pk​,其中 ��pi​ 均为质数,对 1≤�<�1≤i<k,��≤��+1pi​≤pi+1​。可以证明,序列 ��pi​ 是唯一的。对每个给定的 �n,请你求出 �1,�2,…��p1​,p2​,…pk​。Input。第一行是一个整数,表示测试数据组数 �T。接下来 �T 行,每行一个整数,表示一组数据的 �n。Output对每组数据,输出一行若干个用空格隔开的整数,依次表示 �1,�2,…��p1​,p2​,…pk​。

2023-12-10 16:28:42 439

原创 8.C - 第 n 小的质数

输入一个正整数 �n,求正整数范围中第 �n 小的质数。一个不超过 3000030000 的正整数 �n。第 �n 小的质数。

2023-12-10 16:28:06 439

原创 8.B - 三角函数

输入一组勾股数 �,�,�(�≠�≠�)a,b,c(a=b=c),用分数格式输出其较小锐角的正弦值。数据保证:�,�,�a,b,c 为正整数且 ∈[1,109]∈[1,109]。一行,包含三个正整数,即勾股数 �,�,�a,b,c(无大小顺序)。一行,包含一个分数,即较小锐角的正弦值。

2023-12-10 16:27:12 406

原创 8.A - 质数筛

输入 �n 个不大于 105105 的正整数。要求全部储存在数组中,去除掉不是质数的数字,依次输出剩余的质数。数据保证,1≤�≤1001≤n≤100,1≤��≤1051≤ai​≤105。输出一行,依次输出 ��ai​ 中剩余的质数,以空格隔开。第二行输入 �n 个正整数 ��ai​,以空格隔开。第一行输入一个正整数 �n,表示整数个数。

2023-12-10 16:26:02 455

原创 7.J - stick -plus

第一行一个数T表示共有T组数据,每组数据满足 第一行两个整数n,m,表示木棍数目和最大切割次数(1

2023-11-27 13:40:02 463

原创 7.G - 一元三次方程求解

有形如:��3+��2+��+�=0ax3+bx2+cx+d=0 这样的一个一元三次方程。给出该方程中各项的系数(�,�,�,�a,b,c,d 均为实数),并约定该方程存在三个不同实根(根的范围在 −100−100 至 100100 之间),且根与根之差的绝对值 ≥1≥1。提示:记方程 �(�)=0f(x)=0,若存在 22 个数 �1x1​ 和 �2x2​,且 �1<�2x1​<x2​,�(�1)×�(�2)<0f(x1​)×f(x2​)<0,则在 (�1,�2)(x1​,x2​) 之间一定有一个根。

2023-11-27 13:37:51 564

原创 7.E - EKO / 砍树

Mirko 的伐木机工作流程如下:Mirko 设置一个高度参数 �H(米),伐木机升起一个巨大的锯片到高度 �H,并锯掉所有树比 �H 高的部分(当然,树木不高于 �H 米的部分保持不变)。例如,如果一排树的高度分别为 20,15,1020,15,10 和 1717,Mirko 把锯片升到 1515 米的高度,切割后树木剩下的高度将是 15,15,1015,15,10 和 1515,而 Mirko 将从第 11 棵树得到 55 米,从第 44 棵树得到 22 米,共得到 77 米木材。

2023-11-27 13:36:47 363

原创 7.C - Eating Queries

【代码】7.C - Eating Queries。

2023-11-27 13:34:59 900

原创 7.B - Subsequence

【代码】7.B - Subsequence。

2023-11-27 13:30:58 366

原创 7.A - 查找

输入 �n 个不超过 109109 的单调不减的(就是后面的数字不小于前面的数字)非负整数 �1,�2,…对于每次询问,给出一个整数 �q,要求输出这个数字在序列中第一次出现的编号,如果没有找到的话输出 −1−1。数据保证,1≤�≤1061≤n≤106,0≤��,�≤1090≤ai​,q≤109,1≤�≤1051≤m≤105。第三行 �m 个整数,表示询问这些数字的编号,从 11 开始编号。第一行 22 个整数 �n 和 �m,表示数字个数和询问次数。输出一行,�m 个整数,以空格隔开,表示答案。

2023-11-27 13:30:06 376

原创 6.P - Work Scheduling G

【代码】6.P - Work Scheduling G。

2023-11-04 14:20:44 67

原创 6.P - Work Scheduling G

【代码】6.P - Work Scheduling G。

2023-11-04 13:14:03 54

原创 6.O - 国王游戏(easy version)

排好队后,所有的大臣都会获得国王奖赏的若干金币,每位大臣获得的金币数分别是:排在该大臣前面的所有人的左手上的数的乘积除以他自己右手上的数,然后向下取整得到的结果。国王不希望某一个大臣获得特别多的奖赏,所以他想请你帮他重新安排一下队伍的顺序,使得获得奖赏最多的大臣,所获奖赏尽可能的少。接下来 �n 行,每行包含两个整数 �a 和 �b,之间用一个空格隔开,分别表示每个大臣左手和右手上的整数。第二行包含两个整数 �a 和 �b,之间用一个空格隔开,分别表示国王左手和右手上的整数。

2023-11-04 13:13:23 54

原创 6.N - 部分背包问题

阿里巴巴走进了装满宝藏的藏宝洞。藏宝洞里面有 �(�≤100)N(N≤100) 堆金币,第 �i 堆金币的总重量和总价值分别是 ��,��(1≤��,��≤100)mi​,vi​(1≤mi​,vi​≤100)。阿里巴巴有一个承重量为 �(�≤1000)T(T≤1000) 的背包,但并不一定有办法将全部的金币都装进去。他想装走尽可能多价值的金币。所有金币都可以随意分割,分割完的金币重量价值比(也就是单位价格)不变。接下来 �N 行,每行两个整数 ��,��mi​,vi​。第一行两个整数 �,�N,T。

2023-11-04 13:12:08 66

原创 6.M - 合并果子

接着,将新堆与原先的第三堆合并,又得到新的堆,数目为1212,耗费体力为1212。假定每个果子重量都为11,并且已知果子的种类数和每种果子的数目,你的任务是设计出合并的次序方案,使多多耗费的体力最少,并输出这个最小的体力耗费值。第二行包含�n个整数,用空格分隔,第�i个整数��ai​(1≤��≤200001≤ai​≤20000)是第�i种果子的数目。每一次合并,多多可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。在一个果园里,多多已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。

2023-11-04 13:11:36 34

原创 6.I - Crashing Robots

【代码】6.I - Crashing Robots。

2023-11-04 13:10:33 77

原创 6.H - Parencodings

【代码】6.H - Parencodings。

2023-11-04 13:06:58 73

原创 6.G - Ride to School

【代码】6.G - Ride to School。

2023-11-04 12:52:48 39

原创 6.E - Div. 7

【代码】6.E - Div. 7。

2023-11-04 12:50:00 36

原创 6.D - prime factor

接下来�T行中每行一个整数 �n (1≤�≤1�12)(1≤n≤1e12),代表要进行因数分解的的整数。第一行给出一个整数 �T (1≤�≤10000)(1≤T≤10000),代表样例的个数。从小到大输出�n的因数,每一个�n的因数占一行。保证∑1�∑1T​�n ≤1�12≤1e12。给出一个整数�n,将�n的因数从小到大输出。

2023-11-04 12:45:40 40

原创 6.C - 生活大爆炸版石头剪刀布

例如:如果小 A 以「石头 - 布 - 石头 - 剪刀 - 蜥蜴人 - 斯波克」长度为 66 的周期出拳,那么他的出拳序列就是「石头 - 布 - 石头 - 剪刀 - 蜥蜴人 - 斯波克 - 石头 - 布 - 石头 - 剪刀 - 蜥蜴人 - 斯波克 - ……」,而如果小 B 以「剪刀 - 石头 - 布 - 斯波克 - 蜥蜴人」长度为 55 的周期出拳,那么他出拳的序列就是「剪刀 - 石头 - 布 - 斯波克 - 蜥蜴人 - 剪刀 - 石头 - 布 - 斯波克 -蜥蜴人 -蜥蜴人:《星际迷航》中的反面角色。

2023-11-04 12:43:52 109

原创 5.L - Medium - Counting Rectangles

【代码】5.L - Medium - Counting Rectangles。

2023-10-20 21:46:13 47

原创 5.K - Medium - Modulus (Hard Version)

给你长度为n的数字串s(下标从1开始),有q次询问,每次询问给你l和r,问你[l,r]区间构成的数字对77取模之后的结果是多少。(不保证没有前导零)学姐前缀和讲得这么好,题目太简单不能体现出学姐讲课的水平。于是wlk出了点难题考考大家。第一行输入n,q(1≤n,q≤2∗105),表示数字串的长度和询问次数。接下来q行,每行两个数字l,r(1≤l≤r≤n)表示询问区间。第二次询问,取数字串023,对7取模后得2。第一次询问,取数字串10,对7取模后得3。共q行,每行一个数字表示答案。第二行,输入数字串s。

2023-10-20 21:41:28 54

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除