- 博客(65)
- 收藏
- 关注
原创 《酬乐天扬州初逢席见赠》
标红的就是一个是笛赋意思是:指西晋向秀的《思旧赋》。三国曹魏末年,向秀的朋友嵇康、吕安因不满司马氏篡权而被杀害。后来,向秀经过嵇康、吕安的旧居,听到邻人吹笛,不禁悲从中来,于是作《思旧赋》。序文中说自己经过嵇康旧居,因写此赋追念他。刘禹锡借用这个典故怀念已死去的王叔文、柳宗元等人。下一个是烂柯人意思是:指晋人王质。相传晋人王质上山砍柴,看见两个童子下棋,就停下观看。等棋局终了,手中的斧柄(柯)已经朽烂。刘禹锡也借这个故事表达世事沧桑,人事全非,暮年返乡恍如隔世的心情。酬乐天扬州初逢席上见赠。
2025-08-24 09:53:25
233
原创 B4190 [海淀区小学组 2023] 分披萨
陶陶的生日,她要把一份圆形披萨分给 n 个好朋友,她想把这份披萨切成 n+1 份使得每个人都能得到一份(她自己也要分得一份)。这 n+1 份披萨要求大小和形状都要完全一样。那么陶陶最少要切多少刀?切披萨时,只能切直线,不能把披萨叠放起来切。2023 年海淀区中小学生信息学竞赛小学组复赛题目,数据为洛谷自造。样例 1 和样例 2 的切法如下,按着白线分别切 2 刀和 5 刀。第一行仅有一个非负整数 n,表示要把披萨至少切成 n+1 份。仅有一个整数,表示最少要切披萨的次数。
2025-08-20 13:26:47
695
原创 B4265 [朝阳区小学组 2019] rectangle
两个整数 a,b(1≤a,b≤10000),分别表示长方形的长和宽,以空格隔开。两个整数,分别表示长方形的周长和面积,以 1 个空格隔开。给出一个长方形的长和宽,求长方形的周长和面积。一道很简单的模拟题。
2025-08-18 20:04:08
923
原创 P3984 高兴的津津
她在自己的妈妈的魔鬼训练下,成为了一个神犇,每次参加一次 OI 比赛必拿 Au 虐全场。假设津津不会因为其它事高兴,并且她的高兴会持续 T 天(包含获奖当天。就算在高兴的时候再次拿到 Au,他的高兴也只能维持包括这次拿奖之日起 T 天,而不是额外增加 T 天的高兴时间,除非之后再拿奖)。请你帮忙检查一下津津接下来的的日程安排,要参加 n 场比赛,看看接下来的几天,津津会累计开心多久?接下来一行,n 个单调递增整数 ti,表示她在第 ti 天的时候拿了一个 Au。一个整数表示,津津累计开心多久。
2025-08-17 09:28:47
517
原创 P1534 不高兴的津津(升级版)
这次与 NOIp2004 普及组第一题不同的是:假设津津不会因为其它事不高兴,但是她的不高兴会(当然高兴也会)持续到第二天。请你帮忙检查一下津津以后 n 天的日程安排,看看以后 n 天她会不会不高兴(计算方法:用昨天不高兴程度加上今天上课总时间减去 8 后得到的数作为今天不高兴程度);但是津津如果一天上课超过八个小时就会不高兴,而且上得越久就会越不高兴。对于全部数据,上学时间和上课时间各不超过 8,和不超过 16,n≤3000。一个数,这 n 天过后的不高兴程度和。第一行共一个数 n。
2025-08-12 14:31:21
779
原创 P1152 欢乐的跳
一个 n 个元素的整数数组,如果数组两个连续元素之间差的绝对值包括了 [1,n−1] 之间的所有整数,则称之符合“欢乐的跳”,如数组 {1,4,2,3} 符合“欢乐的跳”,因为差的绝对值分别为:3,2,1。每组测试数据第一行以一个整数 n(1≤n≤1000) 开始,接下来 n 个空格隔开的在 [−108,108] 之间的整数。对于每组测试数据,输出一行若该数组符合“欢乐的跳”则输出。给定一个数组,你的任务是判断该数组是否符合“欢乐的跳”。
2025-08-10 13:27:48
435
原创 P1085 [NOIP 2004 普及组] 不高兴的津津
妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。但是津津如果一天上课超过八个小时就会不高兴,而且上得越久就会越不高兴。假设津津不会因为其它事不高兴,并且她的不高兴不会持续到第二天。如果会的话,哪天最不高兴。如果不会不高兴则输出 0,如果会则输出最不高兴的是周几(用 1,2,3,4,5,6,7 分别表示周一,周二,周三,周四,周五,周六,周日)。每行包括两个小于 10 的非负整数,用空格隔开,分别表示津津在学校上课的时间和妈妈安排她上课的时间。
2025-08-10 13:26:25
200
原创 B4062 [GESP202412 一级] 温度转换
小杨最近学习了开尔文温度、摄氏温度和华氏温度的转换。否则,输出两个由空格分隔的实数 C 和 F,分别表示摄氏温度和华氏度,保留两位小数。现在小杨想编写一个程序计算某一开尔文温度对应的摄氏温度和华氏温度,你能帮帮他吗?一行,若输入开尔文温度对应的华氏温度高于 212,输出。一行,一个实数 K,表示开尔文温度。
2025-08-09 12:34:46
210
原创 B3924 [GESP202312 二级] 小杨的H字矩阵
请严格按格式要求输出,不要擅自添加任何空格、标点、空行等任何符号。你应该恰好输出 N 行,每行除了换行符外恰好包含 N 个字符,这些字符要么是 - ,要么是 | ,要么是 a。小杨想要构造一个 N×N 的 H 字矩阵(N 为奇数),具体来说,这个矩阵共有 N 行,每行 N 个字符,其中最左列、最右列都是。,而中间一行(即第2N+1行)的第 2∼N−1 个字符都是。请你帮小杨根据给定的 N 打印出对应的“H 字矩阵”。一行一个整数 N(5≤N≤49 ,保证 N 为奇数)。输出对应的“H 字矩阵”。
2025-08-08 14:08:22
510
原创 P1495 【模板】中国剩余定理(CRT)/ 曹冲养猪
自从曹冲搞定了大象以后,曹操就开始捉摸让儿子干些事业,于是派他到中原养猪场养猪,可是曹冲满不高兴,于是在工作中马马虎虎,有一次曹操想知道母猪的数量,于是曹冲想狠狠耍曹操一把。如果建造了 5 个猪圈,但是仍然有 1 头猪没有地方去,然后如果建造了 7 个猪圈,还有 2 头没有地方去。你作为曹总的私人秘书理所当然要将准确的猪数报给曹总,你该怎么办?第一行包含一个整数 n —— 建立猪圈的次数,接下来 n 行,每行两个整数 ai,bi,表示建立了 ai 个猪圈,有 bi 头猪没有去处。
2025-08-07 09:40:17
540
原创 P3954 [NOIP 2017 普及组] 成绩
牛牛的作业成绩是 100 分,小测成绩是 100 分,期末考试成绩是 80 分,总成绩是 100×20%+100×30%+80×50%=20+30+40=90。牛牛的作业成绩是 60 分,小测成绩是 90 分,期末考试成绩是 80 分,总成绩是 60×20%+90×30%+80×50%=12+27+40=79。对于 100% 的数据,0≤A,B,C≤100 且 A,B,C 都是 10 的整数倍。总成绩=作业成绩×20%+小测成绩×30%+期末考试成绩×50%NOIP2017 普及组 T1。
2025-08-07 09:36:19
365
原创 B3954 [GESP202403 二级] 乘法问题
对于大部分题目,小 A 可以精确地算出答案,不过,若这些数的乘积超过 106,小 A 就不会做了。小 A 最初刚刚学习了乘法,为了帮助他练习,我们给他若干个正整数,并要求他将这些数乘起来。接下来 n,每行一个整数 a。小 A 需要将所有的 a 乘起来。对全部的测试数据,保证 1≤n≤50,1≤a≤100。请你写一个程序,告诉我们小 A 会如何作答。输出一行,如果乘积超过 106,则输出。第一行一个整数 n,表示正整数的个数。否则输出所有数的乘积。
2025-08-06 14:17:24
589
原创 B3862 图的遍历(简单版)
给出 N 个点,M 条边的有向图,对于每个点 v,求 A(v) 表示从点 v 出发,能到达的编号最大的点。接下来 M 行,每行 2 个整数 Ui,Vi,表示边 (Ui,Vi)。一行 N 个整数 A(1),A(2),…第 1 行 2 个整数 N,M,表示点数和边数。对于 100% 的数据,1≤N,M≤10^3。
2025-08-05 08:24:16
511
原创 B3841 [GESP202306 二级] 自幂数判断
例如,153 是 3 位数,其每位数的 3 次方之和,13+53+33=153,因此 153 是自幂数;1634 是 4 位数,其每位数的 4 次方之和,14+64+34+44=1634,因此 1634 是自幂数。输出 M 行,如果对应的待判断正整数为自幂数,则输出英文大写字母 T,否则输出英文大写字母 F。提示:不需要等到所有输入结束在依次输出,可以输入一个数就判断一个数并输出,再输入下一个数。从第 2 行开始的 M 行,每行一个待判断的正整数。输入第一行是一个正整数 M,表示有 M 个待判断的正整数。
2025-08-05 08:19:13
274
原创 P1226 【模板】快速幂
对于 100% 的数据,保证 0≤a,b<2^31,a+b>0,2≤p<2^31。,其中 a,b,p 分别为题目给定的值, s 为运算结果。给你三个整数 a,b,p,求 abmodp。输入只有一行三个整数,分别代表 a,b,p。
2025-08-04 09:14:48
1043
原创 P1177 【模板】排序
第二行包含 N 个空格隔开的正整数 ai,为你需要进行排序的数。将给定的 N 个数从小到大输出,数之间空格隔开,行末换行且无空格。对于 100% 的数据,有 1≤N≤105,1≤ai≤109。对于 20% 的数据,有 1≤N≤103;将读入的 N 个数从小到大排序后输出。第一行为一个正整数 N。
2025-08-04 09:11:57
392
原创 B3953 [GESP202403 一级] 找因数
小 A 最近刚刚学习了因数的概念,具体来说,如果一个正整数 a 可以被另一个正整数 b 整除,那么我们就说 b 是 a 的因数。请你帮忙写一个程序,从小到大输出正整数 a 的所有因数。输出若干行,为 a 的所有约数,从小到大排序。输入一行一个正整数 a。保证 a≤1000。
2025-08-03 09:09:54
184
原创 B3952 [GESP202403 一级] 小杨买书
小杨同学积攒了一部分零用钱想要用来购买书籍,已知一本书的单价是 13 元,请根据小杨零用钱的金额,编写程序计算可以购买多少本书,还剩多少零用钱。输出包含两行,第一行,购买图书的本数;第二行,剩余的零用钱数。输入一个正整数 m,表示小杨拥有的零用钱数。对全部的测试数据,保证 0<m<200。
2025-08-03 09:07:42
322
原创 P13015 [GESP202506 六级] 学习小组
班主任计划将班级里的 n 名同学划分为若干个学习小组,每名同学都需要分入某一个学习小组中。观察发现,如果一个学习小组中恰好包含 k 名同学,则该学习小组的讨论积极度为 ak。,an,请你计算将这 n 名同学划分为学习小组的所有可能方案中,讨论积极度之和的最大值。第二行,n 个非负整数 a1,a2,…,an,表示不同人数学习小组的讨论积极度。输出共一行,一个整数,表示所有划分方案中,学习小组讨论积极度之和的最大值。对于所有测试点,保证 1≤n≤1000,0≤ai≤104。
2025-08-02 15:32:32
481
原创 P13014 [GESP202506 五级] 最大公因数
给定 n 个正整数 a1,a2,…对于第 i(1≤i≤q) 组询问,请求出 a1+i,a2+i,…,an+i 的最大公因数,也即 gcd(a1+i,a2+i,…输出共 q 行,第 i 行包含一个正整数,表示 a1+i,a2+i,…对于所有测试点,保证 1≤n≤105,1≤q≤105,1≤ai≤1000。第一行,两个正整数 n,q,分别表示给定正整数的数量,以及询问组数。对于 60% 的测试点,保证 1≤n≤103,1≤q≤10。第二行,n 个正整数 a1,a2,…
2025-08-02 15:25:19
266
原创 P11228 [CSP-J 2024] 地图探险
对第二组数据,机器人依次执行的操作指令为:向东走到 (1,2),向东走到 (1,3),向东走到 (1,4),向东走到 (1,5),向右转,向南走到 (2,5),向南走到 (3,5),向南走到 (4,5),向南走到 (5,5),向右转,向西走到 (5,4),向西走到 (5,3),向西走到 (5,2),向右转,向北走到 (4,2),向右转,向右转,向南走到 (5,2),向右转,向右转。数据保证机器人初始时所在的位置为空地。因此,四步之后,机器人经过的位置有三个,分别为 (1,1),(1,2),(1,3)。
2025-08-01 10:33:06
1316
原创 P11227 [CSP-J 2024] 扑克牌
为了方便你的输入,我们使用字符 D 代表方片,字符 C 代表草花,字符 H 代表红桃,字符 S 代表黑桃,这样每张牌可以通过一个长度为 2 的字符串表示,其中第一个字符表示这张牌的花色,第二个字符表示这张牌的点数,例如 CA 表示草花 A,ST 表示黑桃 T(黑桃 10)。对于所有测试数据,保证:1≤n≤52,输入的 n 个字符串每个都代表一张合法的扑克牌,即字符串长度为 2,且第一个字符为 DCHS 中的某个字符,第二个字符为 A23456789TJQK 中的某个字符。有一张牌具有对应的花色和点数。
2025-07-31 13:00:58
806
原创 P1307 [NOIP 2011 普及组] 数字反转
给定一个整数 N,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例 2)。noip2011 普及组第一题。一个整数,表示反转后的新数。
2025-07-28 16:00:21
604
原创 B3927 [GESP202312 四级] 小杨的字典
和一些 A 语言单词构成,每个单词之间必定由至少一个标点符号分割,你的程序需要把这段话中的所有 A 语言单词替换成它的 B 语言翻译。接下来 N 行,每行两个用单个空格隔开的字符串 A, B ,分别表示字典中的一个 A 语言单词以及它对应的 B 语言翻译。在遥远的星球,有两个国家 A 国和 B 国,他们使用着不同的语言:A 语言和 B 语言。为了顺利完成工作,小杨制作了一本字典,里面记录了 N 个 A 语言单词对应的 B 语言单词,巧合的是,这些单词都 由地球上的 26 个小写英文字母组成。
2025-07-28 15:52:33
758
原创 B2004 对齐输出
读入三个整数,按每个整数占 8 个字符的宽度,右对齐输出它们,按照格式要求依次输出三个整数,之间以一个空格分开。%nd → 表示输出的整数宽度至少为 n 位,不足 n 位左填充空格。位数大于 n 则输出实际位数。%0nd → 表示输出的整数宽度至少为 n 位,不足 n 位左填充 0。位数大于 n 则输出实际位数。只有一行,包含三个整数 a,b,c。整数之间以一个空格分开。只有一行,按照格式要求依次输出三个整数,之间以一个空格分开。对于 100% 的数据,−2^31≤a,b,c<2^31。
2025-07-27 12:10:08
359
原创 P1217 [USACO1.5] 回文质数 Prime Palindromes
因为 151 既是一个质数又是一个回文数(从左到右和从右到左是看一样的),所以 151 是回文质数。写一个程序来找出范围 [a,b](5≤a<b≤100,000,000)(一亿)间的所有回文质数。提示 2: 要产生正确的回文数,你可能需要几个像下面这样的循环。提示 1: 找出所有的回文数再判断它们是不是质数(素数).第一行输入两个正整数 a 和 b。输出一个回文质数的列表,一行一个。
2025-07-25 13:43:47
320
原创 P1176 路径计数2
表示坐标 (x,y) 上有障碍不能通过,且有 1≤x,y≤n,且 x,y 至少有一个大于 1,并请注意障碍坐标有可能相同。一个 N×N 的网格,你一开始在 (1,1),即左上角。每次只能移动到下方相邻的格子或者右方相邻的格子,问到达 (N,N),即右下角有多少种方法。但是这个问题太简单了,所以现在有 M 个格子上有障碍,即不能走到这 M 个格子上。输入文件第 1 行包含两个非负整数 N,M,表示了网格的边长与障碍数。对于 100% 的数据,有N≤1000,M≤100000。对于 20% 的数据,有N≤3;
2025-07-25 13:39:26
140
原创 P1441 砝码称重
现有 n 个砝码,重量分别为 ai,在去掉 m 个砝码后,问最多能称量出多少不同的重量(不包括 0)。第 2 行有 n 个正整数 a1,a2,a3,…,an,表示每个砝码的重量。在去掉一个重量为 2 的砝码后,能称量出 1,2,3 共 3 种重量。对于 100% 的数据,n≤20, m≤4,m<n,ai≤100。仅包括 1 个整数,为最多能称量出的重量数量。对于 50% 的数据,n≤10。请注意,砝码只能放在其中一边。对于 20% 的数据,m=0。对于 50% 的数据,m≤1。
2025-07-25 12:32:38
430
原创 lanqiaoOJ 108:发现环
不过在最近一次维护网络时,管理员误操作使得某两台电脑之间增加了一条数据链接,于是网络中出现了环路。环路上的电脑由于两两之间不再是只有一条路径,使得这些电脑上的数据传输出现了BUG。原本这 N 台电脑之间有 N-1 条数据链接相连,恰好构成一个树形网络。在树形网络上,任意两台电脑之间有唯一的路径相连。以下 N 行每行两个整数 a,b,表示 a 和 b 之间有一条数据链接相连。其中,1≤N≤10^5,1≤a,b≤N。按从小到大的顺序输出在环路上的电脑的编号,中间由一个空格分隔。第一行包含一个整数 N。
2025-07-24 09:52:19
211
原创 P2615 [NOIP 2015 提高组] 神奇的幻方
幻方是一种很神奇的 N×N 矩阵:它由数字 1,2,3,⋯⋯,N×N 构成,且每行、每列及两条对角线上的数字之和都相同。共 N 行,每行 N 个整数,即按上述方法构造出的 N×N 的幻方,相邻两个整数之间用单空格隔开。现给定 N ,请按上述方法构造 N×N 的幻方。对于 100% 的数据,对于全部数据,NOIp2015 提高组 Day1T1。首先将 1 写在第一行的中间。一个正整数 N,即幻方的大小。
2025-07-24 09:38:38
370
原创 洛谷 B4263:[GESP202503 四级] 荒地开垦
小杨想要开垦这块荒地,但荒地中一些位置存在杂物,对于一块不存在杂物的荒地,该荒地可以开垦当且仅当其上下左右四个方向相邻的格子均不存在杂物。小杨可以选择至多一个位置,清除该位置的杂物,移除杂物后该位置变为荒地。小杨想知道在清除至多一个位置的杂物的情况下,最多能够开垦多少块荒地。如果为 #,代表该位置为杂物。第一行从左数前 4 块荒地,第二行从左数前 3 块荒地,第三行从左数前 4 块荒地,均可开垦,4+3+4=11。输出一个整数,代表在清除至多一个位置的杂物的情况下,最多能够开垦的荒地块数。
2025-07-23 18:15:33
219
原创 B4068 [GESP202412 四级] Recamán
小杨想知道 Recamán 数列的前 n 项从小到大排序后的结果。手动计算非常困难,小杨希望你能帮他解决这个问题。一行,n 个空格分隔的整数,表示 Recamán 数列的前 n 项从小到大排序后的结果。第一行,一个正整数 n。
2025-07-23 16:29:27
289
原创 洛谷 B3940
在一个 N×N 的正方形网格中,每个格子分别填上从 1 到 N×N 的正整数,使得正方形中任一行、任一列及对角线的几个数之和都相等,则这种正方形图案就称为“幻方”(输出样例中展示了一个 3×3 的幻方)。我国古代称为“河图”、“洛书”,又叫“纵横图”。输出 N 行,每行 N 个空格分隔的正整数,内容为 N×N 的幻方。快来编写一个程序,按上述规则,制作一个 N×N 的幻方吧。输入为一个正奇数 N,保证 3≤N≤21。
2025-07-23 15:59:47
404
原创 洛谷 B3939:[GESP样题 四级] 绝对素数
如果一个两位数是素数,且它的数字位置经过对换后仍为素数,则称为绝对素数,例如 13。给定两个正整数 A,B,请求出大于等于 A、小于等于 B 的所有绝对素数。输入 1 行,包含两个正整数 A 和 B。保证 10<A<B<100。若干行,每行一个绝对素数,从小到大输出。
2025-07-23 15:08:47
280
原创 P1059 [NOIP 2006 普及组] 明明的随机数
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了 N 个 1 到 1000 之间的随机整数 (N≤100),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。第 2 行为 M 个用空格隔开的正整数,为从小到大排好序的不相同的随机数。输出也是两行,第 1 行为 1 个正整数 M,表示不相同的随机数的个数。输入有两行,第 1 行为 1 个正整数,表示所生成的随机数的个数 N。NOIP 2006 普及组 第一题。
2025-07-22 18:29:45
224
原创 洛谷 B4064:[GESP202412 二级] 寻找数字
对于每组测试数据,如果存在满足条件的正整数 b,则输出 b,否则输出 −1。小杨有一个正整数 a,小杨想知道是否存在一个正整数 b 满足 a=b^4。对于全部数据,保证有 1≤t≤10^5,1≤ai≤10^8。对于每组测试数据,第一行包含一个正整数代表 a。第一行包含一个正整数 t,代表测试数据组数。
2025-07-22 10:32:15
304
原创 AcWing 830:单调栈
共一行,包含N个整数,其中第i个数表示第i个数的左边第一个比它小的数,如果不存在则输出−1。给定一个长度为N的整数数列,输出每个数左边第一个比它小的数,如果不存在则输出−1。第二行输入N个整数,表示数列中各个元素值。第一行输入一个整数N,表示数列长度。1≤数列中元素≤10^9。
2025-07-21 17:49:39
283
原创 lanqiaoOJ:19871 单调栈
(1≤ai≤10^5, 1≤i≤ N)第四行输出每个数字其右边第一个比其小的数字,不存在则输出 -1。第一行输出每个数字其左边第一个比其大的数字,不存在则输出 -1。第二行输出每个数字其右边第一个比其大的数字,不存在则输出 -1。第三行输出每个数字其左边第一个比其小的数字,不存在则输出 -1。第一行输出每个数字其左边第一个比其大的数字,不存在则输出 -1。第二行输出每个数字其右边第一个比其大的数字,不存在则输出 -1。第三行输出每个数字其左边第一个比其小的数字,不存在则输出 -1。
2025-07-21 17:41:56
465
原创 P5788 【模板】单调栈
即 f(i)=mini<j≤n,aj>ai{j}。若不存在,则 f(i)=0。定义函数 f(i) 代表数列中第 i 个元素之后第一个大于 ai 的元素的。对于 100% 的数据,1≤n≤3×106,1≤ai≤109。一行 n 个整数表示 f(1),f(2),…2019.12.12 更新数据,放宽时限,现在不再卡常了。给出项数为 n 的整数数列 a1…对于 60% 的数据,n≤5×103;第二行 n 个正整数 a1…对于 30% 的数据,n≤100;第一行一个正整数 n。
2025-07-21 16:56:51
338
空空如也
P1495 【模板】中国剩余定理(CRT)/ 曹冲养猪
2025-08-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人