- 博客(39)
- 收藏
- 关注
原创 求10000以内n的阶乘(高精度运算)
n 的阶乘写作 n!例如当 n = 4时,4!只有一行输入,整数 n(0<n≤10000)。求 10000 以内 n 的阶乘。
2024-09-22 14:43:21
305
原创 千千蓝鲸 回文数求和(高精度运算)
输入一个正整数a,判断是否是回文数,如果是回文数输出YES;如果不是回文数,计算输出(a+a)的结果。样例1中输入的整数不是回文数,输出(a+a)的结果是246913578202224278。样例2中输入45013891000019831054是回文数,结果输出大写YES。一个正整数(10≤位数≤2000)。回文数:数字从前向后读和从后向前读相同。根据题目要求输出相应结果。
2024-09-02 20:16:16
850
原创 P1024 [NOIP2001 提高组] 一元三次方程求解(数学,二分,枚举,分治)
给出该方程中各项的系数(a,b,c,da,b,c,d 均为实数),并约定该方程存在三个不同实根(根的范围在 -100−100 至 100100 之间),且根与根之差的绝对值 \ge 1≥1。提示:记方程 f(x) = 0f(x)=0,若存在 22 个数 x_1x1 和 x_2x2,且 x_1 < x_2x1<x2,f(x_1) \times f(x_2) < 0f(x1)×f(x2)<0,则在 (x_1, x_2)(x1,x2) 之间一定有一个根。NOIP 2001 提高组第一题。
2024-08-22 18:05:33
554
原创 P1012 [NOIP1998 提高组] 拼数(字符串,排序)
对于全部的测试点,保证 1 \leq n \leq 201≤n≤20,1 \leq a_i \leq 10^91≤ai≤109。设有 nn 个正整数 a_1 \dots a_na1…an,将它们联接成一排,相邻数字首尾相接,组成一个最大的整数。第二行有 nn 个整数,表示给出的 nn 个整数 a_iai。第一行有一个整数,表示数字个数 nn。NOIP1998 提高组 第二题。一个正整数,表示最大的整数。
2024-08-21 17:52:52
423
原创 P1007 独木桥(模拟,贪心)
你希望找些刺激,于是命令你的士兵们到前方的一座独木桥上欣赏风景,而你留在桥下欣赏士兵们。所有士兵的速度都为 11,但一个士兵某一时刻来到了坐标为 00 或 L+1L+1 的位置,他就离开了独木桥。对于 100\%100% 的数据,满足初始时,没有两个士兵同在一个坐标,1\le L\le5\times 10^31≤L≤5×103,0\le N\le5\times10^30≤N≤5×103,且数据保证 N\le LN≤L。但是,如果两个士兵面对面相遇,他们无法彼此通过对方,于是就分别转身,继续行走。
2024-08-18 14:53:35
1568
原创 P1014 [NOIP1999 普及组] Cantor 表
我们以 Z 字形给上表的每一项编号。第一项是 1/11/1,然后是 1/21/2,2/12/1,3/13/1,2/22/2,…现代数学的著名证明之一是 Georg Cantor 证明了有理数是可枚举的。整数NN(1 \leq N \leq 10^71≤N≤107)。if (temp % 2 == 0)//按照奇偶规律输出。while (all < n) {//找到第几趟。表中的第 NN 项。
2024-08-15 18:12:26
388
原创 P1150 Peter的烟(模拟)
Peter 有 nn 根烟,他每吸完一根烟就把烟蒂保存起来,kk(k>1k>1)个烟蒂可以换一个新的烟,那么 Peter 最终能吸到多少根烟呢?第二种 数学(根据题目,推导出计算公式,通过目前烟头的数量n>=k,判断是否可以继续兑换烟,从而计算烟的总数。每组测试数据一行包括两个整数 n, kn,k(1 < n, k \le 10^81<n,k≤108)。对于 100\%100% 的数据,1<n, k \le 10^81<n,k≤108。//新一批的烟头数量。//不能兑换的烟头数量。//先加上初始烟的数量。
2024-08-13 18:55:39
570
原创 召见骑士(栈)
某王国有 5 位骑士,每位骑士都有自己的编号,且这个王国的编号都为奇数,分别为 1,3,5,7,9,在国王召见他们之前他们都必须经过只能从一边进出的长廊,长廊的宽度只能坐一个人。2018年1月1日这天,所有骑士依照编号从小到大的次序提前在长廊的入口等待,且只有当前面的人进入长廊后,后面的人才能进入长廊。国王想要召见一些骑士,把他们的编号写在纸上,让侍卫去宣传召见,问国王写的召见编号是否合理?while(a>=cnt){//不能用if。如果合理,输出“YES”,如果不合理,输出“NO”。
2024-08-11 13:48:09
604
原创 P1010 [NOIP1998 普及组] 幂次方(数学,分治)
所以 13151315 最后可表示为 2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0)2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0)。所以最后 137137 可表示为 2(2(2)+2+2(0))+2(2+2(0))+2(0)2(2(2)+2+2(0))+2(2+2(0))+2(0)。由此可知,137137 可表示为 2(7)+2(3)+2(0)2(7)+2(3)+2(0)NOIP1998 普及组 第三题。
2024-08-10 20:39:29
457
原创 洛谷 P1003 [NOIP2011 提高组] 铺地毯
接下来的 nn 行中,第 i+1i+1 行表示编号 ii 的地毯的信息,包含四个整数 a ,b ,g ,ka,b,g,k,每两个整数之间用一个空格隔开,分别表示铺设地毯的左下角的坐标 (a, b)(a,b) 以及地毯在 xx 轴和 yy 轴方向的长度。对于 100\%100% 的数据,有 0 \le n \le 10^40≤n≤104, 0 \le a, b, g, k \le {10}^50≤a,b,g,k≤105。地毯铺设完成后,组织者想知道覆盖地面某个点的最上面的那张地毯的编号。
2024-08-10 19:47:40
592
原创 洛谷 P1002 [NOIP2002 普及组] 过河卒
同时在棋盘上 CC 点有一个对方的马,该马所在的点和所有跳跃一步可达的点称为对方马的控制点。对于 100 \%100% 的数据,1 \le n, m \le 201≤n,m≤20,0 \le0≤ 马的坐标 \le 20≤20。棋盘用坐标表示,AA 点 (0, 0)(0,0)、BB 点 (n, m)(n,m),同样马的位置坐标是需要给出的。现在要求你计算出卒从 AA 点能够到达 BB 点的路径的条数,假设马的位置是固定不动的,并不是卒走一步马走一步。//马可以走到的位置。
2024-08-06 19:35:48
388
原创 普及组 珠心算测验(模拟+枚举)
描述珠心算是一种通过在脑中模拟算盘变化来完成快速运算的一种计算技术。珠心算训练,既能够开发智力,又能够为日常生活带来很多便利,因而在很多学校得到普及。某学校的珠心算老师采用一种快速考察珠心算加法能力的测验方法。他随机生成一个正整数集合,集合中的数各不相同,然后要求学生回答:其中有多少个数,恰好等于集合中另外两个(不同的)数之和?最近老师出了一些测验题,请你帮忙求出答案。输入描述共两行,第一行包含一个整数 n,表示测试题中给出的正整数个数。
2024-07-30 20:58:00
369
原创 小杨的幸运数
int a, n;i <= mx;++ i) {j <= N;j += f) {else {lck();int x;cin >> x;return 0;
2024-07-30 20:54:58
457
原创 丰富的周日生活(贪心)
描述每项活动都有开始时间和结束时间。小童认为参加越多的活动,自己的周日生活就越丰富。小童一向善始善终。一个活动结束前,小童不会中途退出。给出本周日各项活动的开始和结束时间表,请算算小童最多能参加多少个活动。输入描述第一行一个整数 n。接下来 n 行,每行两个正整数,分别表示一项活动的开始时间和结束时间。输出描述一个整数,表示小童最多能够参加的活动数。样例输入 158 132 117 913 163 8样例输出 13提示。
2024-07-30 18:22:03
587
原创 区间选点(贪心)
给定N个闭区间[l,r],请在数轴上选择尽量少的点,使得每个区间内至少包含一个选出的点。输出所选点的最小数量。接下来N行,每行两个整数l,r,分别表示一个区间的左端点和右端点(−109≤l≤r≤109)。第一行一个整数N,表示闭区间数量(1≤N≤105)。注意:位于区间端点上的点也算作区间内。输出一个整数,表示所选点的最小数量。
2024-07-30 18:18:15
703
原创 调度员的烦恼(栈)
有一个火车站,铁路如图所示,每辆火车从 A 驶入,再从 B 方向驶出,同时它的车厢可以重新组合。假设从 A 方向驶来的火车有 n 节(n≤1000),分别按照顺序编号为 1,2,3,…但是一旦进入车站 C,它就不能再回到 A 方向的铁轨上了,并且一旦当它进入 B 方向的铁轨,它就不能再回到车站 C。,an的顺序从 B 方向驶出,请你来写个程序方便调度员,判断能否得到指定的车厢顺序。如果可以得到指定的车厢顺序,则输出一个字符串”YES”,否则输出”NO”(注意要大写,不包含引号)。
2024-07-28 15:54:29
646
原创 括号匹配问题(栈)
或 [([ ][ ])]等为正确的格式,[ ( ] )或 ( [ ( ) )或( ( ) ] )均为不正确的格式。中等-时间限制: 1000MS内存限制: 256MB分数:100OI排行榜得分:16(0.1*分数+2*难度)给定一串括号输入(换行作为结束符),检测格式是否正确,若正确输出YES;假设表达式中允许包含两种括号:圆括号和方括号,其嵌套的顺序随意,但需要成对出现。栈基础第十讲(Level2)(括号数量≤100)
2024-07-28 14:50:08
530
3
原创 小鱼的数字游戏(栈)
小鱼最近被要求参加一个数字游戏,要求它把看到的一串数字a1、a2、a3…an-1、an ,反着念出来。如:1、2、3,反着念为:3、2、1。这对小鱼的那点记忆力来说实在是太难了,所以请你帮小鱼编程解决这个问题。简单时间限制: 1000MS内存限制: 256MB分数:100OI排行榜得分:12(0.1*分数+2*难度)第一行输入一个整数n(1<n<10)。一行内倒序输出n个数字,以空格间隔。第二行输入n个数字,以空格间隔。栈基础第十讲(Level2)
2024-07-28 13:54:10
693
原创 蓝桥杯训练题 数的读法(字符串)
注意必须严格按照规范,比如说“10010”读作“yi wan ling yi shi”而不是“yi wan ling shi”,“100000”读作“shi wan”而不是“yi shi wan”,“2000”读作“er qian”而不是“liang qian”。你的任务是帮他设计这样一个系统:给定一个阿拉伯数字串,你帮他按照中文读写的规范转为汉语拼音字串,相邻的两个音节用一个空格符格开。比如说,在对学生讲解第1234567009号位置上的碱基时,光看着数字是很难准确的念出来的。
2024-07-27 19:20:25
392
原创 提高组 玩具谜题(模拟)
玩具谜题题目内容全部提交我的提交题目统计中等-时间限制: 1000MS内存限制: 512MB分数:100OI排行榜得分:16(0.1*分数+2*难度)提高组day1NOIP2016简单模拟描述小南有一套可爱的玩具小人, 它们各有不同的职业。有一天, 这些玩具小人把小南的眼镜藏了起来。小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的面朝圈外。如下图:这时 singer 告诉小南一个谜題: “眼镜藏在我左数第 3 个玩具小人的右数第 1 个玩具小人的左数第 2 个玩具小人那里。
2024-07-25 19:34:44
1677
原创 生日(结构体)
小童知道CSP兴趣小组中每个同学的生日。于是,他想通过编程将小组成员按照年龄从大到小的顺序排序。但是小童编程水平又很菜,忙活了半天都没有实现自己的想法。请身为编程小能手的你,帮他完成排序。保证年月日实际存在,且年份在1990~2022范围内。包括1990和2022。输出共有 n 行,即 n 个年龄从大到小同学的姓名。(任意两个同学的生日都不相同)。第 2 行至第 n+1 行分别是每个人的姓名 s、出生年 y、月 m、日 d。输入共有 n+1 行,第 1 行为 CSP兴趣小组总人数 n;
2024-07-20 17:23:00
513
原创 樱花(埃氏筛法)
描述求不定方程:x1+y1=n!1的正整数解 (x,y) 的数目。输入描述一个整数 n。输出描述一个整数,表示有多少对 (x,y) 满足题意。答案对 109+7 取模。样例输入 12样例输出 13提示。
2024-07-20 16:49:47
517
原创 GESP 巧夺大奖(贪心)
7 个时间段可分别安排完成第 4、2、3、1、6、7、5 个小游戏,其中第 4、2、3、1、7 个小游戏在期限内完成。小明发现,这些小游戏都很简单,不管选择哪个小游戏,他都能在一个时间段内完成。第 i 个正整数为 Ri,即第 i 个小游戏的完成奖励。对于第 i 个小游戏,参加者必须在第 Ti 个时间段结束前完成才能得到奖励 Ri。第 i 个正整数为 Ti,即第 i 个小游戏的完成期限。游戏分为 n 个时间段,参加者每个时间段可以选择一个小游戏。输出一行,包含一个正整数 C,为最高可获得的奖励。
2024-07-20 11:07:50
594
原创 莱布尼茨三角形(二维数组 +枚举+模拟)
世界上著名的莱布尼茨三角形如图所示,请编程输出图中排在第n行从左边数第m个位置上的数。输入为一行,有二个整数 N 和 M ( 1≤M≤N≤30 ),两数间用空格隔开。输出共一行,有二个整数,两数间用“/”隔开,表示所求的分数。
2024-07-19 16:39:29
321
原创 Vigenère 密码(字符串+模拟)
描述16 世纪法国外交家 Blaise de Vigenère 设计了一种多表密码加密算法 Vigenère 密码。Vigenère 密码的加密解密算法简单易用,且破译难度比较高,曾在美国南北战争中为南军所广泛使用。在密码学中,我们称需要加密的信息为明文,用 M 表示;称加密后的信息为密文,用 C 表示;而密钥是一种参数,是将明文转换为密文或将密文转换为明文的算法中输入的数据,记为 k。在 Vigenère 密码中,密钥 k 是一个字母串,k=k1,k2,…,kn。
2024-07-19 16:01:33
916
原创 GESP4级 图像压缩(字符串)
描述图像是由很多的像素点组成的。如果用 0 表示黑,255 表示白,0 和 255 之间的值代表不同程度的灰色,则可以用一个字节表达一个像素(取值范围为十进制 0−255、十六进制 00−FF)。这样的像素组成的图像,称为 256 级灰阶的灰度图像。现在希望将 256 级灰阶的灰度图像压缩为 16 级灰阶,即每个像素的取值范围为十进制 0−15、十六进制 0−F。
2024-07-19 15:52:57
1174
原创 糖果传递(贪心提高)
描述有 n 个小朋友坐成一圈,每人有 ai 颗糖果。每人只能给左右两人传递糖果。每人每次传递一颗糖果的代价为 1。求使所有人获得均等糖果的最小代价。输入描述第一行有一个整数 n ,表示小朋友个数;在接下来 n 行中,每行一个整数 ai。输出描述输出使所有人获得均等糖果的最小代价。样例输入 141254样例输出 14提示。
2024-07-19 14:25:24
235
原创 提高组 侦探推理(暴力枚举)
描述明明同学最近迷上了侦探漫画《柯南》并沉醉于推理游戏之中,于是他召集了一群同学玩推理游戏。游戏的内容是这样的,明明的同学们先商量好由其中的一个人充当罪犯(在明明不知情的情况下),明明的任务就是找出这个罪犯。接着,明明逐个询问每一个同学,被询问者可能会说:证词内容I am guilty.I am not guilty.XXX is guilty.XXX is not guilty.Today is XXX.证词含义我是罪犯。我不是罪犯。XXX 是罪犯。其中 XXX 表示某个同学的名字。
2024-07-19 12:38:58
1924
原创 CSP-J 公交换乘(队列基础+模拟)
描述著名旅游城市 B 市为了鼓励大家采用公共交通方式出行,推出了一种地铁换乘公交车的优惠方案:1、在搭乘一次地铁后可以获得一张优惠票,有效期为 45 分钟,在有效期内可以消耗这张优惠票,免费搭乘一次票价不超过地铁票价的公交车。在有效期内指开始乘公交车的时间与开始乘地铁的时间之差小于等于 45 分钟,即:tbus−tsubway≤452、搭乘地铁获得的优惠票可以累积,即可以连续搭乘若干次地铁后再连续使用优惠票搭乘公交车,但每次搭乘公交车只能使用一张优惠券。
2024-07-19 12:25:56
671
原创 造海船(二分基础)
明朝郑和下西洋,需要建造庞大的海船,需要足够的木料,因为那时候没有钢铁制造的船,现在有 n 根原木,现在想把这些木头切割成 k 段长度均为 l 的小段木头(木头有可能有剩余),用来制造船的部件。对于 100% 的数据,有 1≤n≤105,1≤k≤108,1≤Li≤10^8(i∈[1,n])。当然,工匠希望得到的小段木头越长越好,这样可以让船更大一些不浪费木料,请求出 l 的最大值。第一行是两个正整数 n,k,分别表示原木的数量,需要得到的小段的数量。如果连 1cm 长的小段都切不出来,输出。
2024-07-19 11:53:07
538
原创 有趣的求和(前缀和)
描述给出n个数排成一排,你可以任意选出连续的L个数字求和。例如:n=5 L = 4连续取L个数的方法有两种。1、取前4个数-20 30 80 50 和为140。2、取后4个数30 80 50 40 和为200。请你找出最大和是多少,上例结果应该为200。输入描述第1行为两正整数n和L表示数列数字个数和取的长度;第2行n个整数空格分隔,表示数列中的每个元素,数字在-100到100之间的整数。输出描述输出一个整数,最大的数字和。样例输入 15 4样例输出 1。
2024-07-19 11:41:01
675
原创 蓝桥杯训练题 关系网络(队列基础 搜索基础)
有n个人,他们的编号为1~n,其中有一些人相互认识,现在x想要认识y,可以通过他所认识的人来认识更多的人,如果x认识z,z认识y,那么x可以通过z认识y,求出x最少需要通过多少人才能认识y。保证i=j时,a[i,j]=0,并且a[i,j]= a[j,i]。行中的每两个数之间用一个空格分开。接下来是一个n×n的邻接矩阵,a[i,j]=1,表示i和j认识,0表示不认识。第1行3个整数n、x、y,2≤n≤100,1≤x,y≤n。输出一行一个数,表示x认识y最少需要通过的人数。
2024-07-18 20:41:06
264
原创 蓝桥杯训练题 城市交通(动态规划基础)
有n个城市,编号1~n,有些城市之间有路相连,有些则没有,有路则会有一个距离。例如下图所示为一个含有11个城市的交通图,连线上的数表示距离。现在规定只能从编号小的城市到编号大的城市。请问从编号为1的城市到编号为n的城市之间的最短距离是多少?接下来n行是一个n×n的邻接矩阵map[i,j],其中map[i,j]=0,表示城市i和j之间没有路相连,否则为两者之间的距离,1≤两个城市之间的距离≤1000000。数据保证一定可以从城市1到城市n。第一行为整数n,表示城市数,(1
2024-07-18 20:33:43
497
原创 4436 混合操作(前缀和)
描述输入 n 个整数,计算区间和。输入描述第一行包括一个整数 n。第二行包括 n 个整数。第三行包括一个整数 m,表示需进行 m 次操作。操作包括两种:1 表示计算区间和;2 表示修改 n 个整数的其中 1 个。(操作 2 只有 1 次)接着有 m 行,每行表示 1 次操作:如果第一个数字为 1,后面跟着区间的起点 L,终点 R;如果第一个整数为 2,后面跟着被修改整数所在位置 k,修改为整数 num。输出描述输出 m−1 行,每行一个整数,表示一个区间和。样例输入 1。
2024-07-18 09:46:37
471
原创 1756 Pell数列(递推)
Pell数列 a1,a2,a3, …的定义是这样的,a1 = 1, a2 = 2, …, an=2an-1+an-2(n>2)。给出一个正整数 k,要求Pell数列的第 k 项模上 32767 是多少。第1行是测试数据的组数 n,后面跟着 n 行输入。每组测试数据占 1 行,包括一个正整数k (1 ≤ k < 1000000)。n 行,每行输出对应一个输入。输出应是一个非负整数。
2024-07-17 19:03:31
299
原创 3121 扫雷游戏 (字符串+二维数组)
在 n 行 m 列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。游戏的目标是在不翻出任何地雷格的条件下,找出所有的非地雷格。表示相应格子是非地雷格。用 * 表示地雷格,用周围的地雷个数表示非地雷格。注:一个格子的周围格子包括其上、下、左、右、左上、右上、左下、右下八个方向上与之直接相邻的格子。第一行是两个整数 n 和 m,分别表示雷区的行数和列数(1≤n≤100,1≤m≤100)。现在给出 n 行 m 列的雷区中的地雷分布,要求计算出每个非地雷格周围的地雷格数。
2024-07-17 18:56:53
500
原创 蓝桥杯省赛 垂直柱状图(字符串+模拟)
写一个程序从输入文件中去读取四行大写字母(全都是大写的,每行不超过 100 个字符),然后用柱状图输出每个字符在输入文件中出现的次数。严格地按照输出样例来安排你的输出格式。由若干行组成,前几行由空格和星号组成,最后一行则是由空格和字母组成的。在任何一行末尾不要打印不需要的多余空格。四行字符,由大写字母组成,每行不超过 100 个字符。
2024-07-17 17:21:45
573
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅