刷题
文章平均质量分 60
Ntses
寂静的时候最容易孕育新生
展开
-
CodeWars刷题练习
好久没刷题了,都生疏了,偶然发现了CodeWars也可以刷题就打算从头开始做,看看自己落下了多少。题目大意是把字符串中的元音字母去掉,并且y不算做元音,并返回去掉后的字符串。我的想法是把这几个字母存在数组里然后遍历,利用replace()把他们替换掉。有别的方法解决的可以分析一下嘛。...原创 2022-08-31 22:29:00 · 300 阅读 · 1 评论 -
K倍区间
给定一个长度为N的数列,A1, A2, … AN,如果其中一段连续的子序列Ai, Ai+1, … Aj(i <= j)之和是K的倍数,我们就称这个区间[i, j]是K倍区间。你能求出数列中总共有多少个K倍区间吗?输入:第一行包含两个整数N和K。(1 <= N, K <= 100000)以下N行每行包含一个整数Ai。(1 <= Ai <= 100000)输出:输出一个整数,代表K倍区间的数目。例如,输入:5 212345程序应该输出:6.原创 2022-04-06 17:29:01 · 440 阅读 · 0 评论 -
剪邮票
如图, 有12张连在一起的12生肖的邮票。现在你要从中剪下5张来,要求必须是连着的。(仅仅连接一个角不算相连)比如:粉红色所示部分就是合格的剪取。请你计算,一共有多少种不同的剪取方法。请填写表示方案数目的整数。注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。我们可以先定义一位数组,里面放5个1,其余全是0;它之后的每一个排列代表12选5的一个方案再将这个排列映射到一个二维矩阵上,就像题目所给图示一样。接下来就定义所需方法连通性检测。publ...原创 2022-04-05 23:58:57 · 229 阅读 · 0 评论 -
排序
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。小蓝最近学习了一些排序算法,其中冒泡排序让他印象深刻。在冒泡排序中,每次只能交换相邻的两个元素。小蓝发现,如果对一个字符串中的字符排序,只允许交换相邻的两个字符, 则在所有可能的排序方案中,冒泡排序的总交换次数是最少的。例如,对于字符串lan排序,只需要1次交换。对于字符串 qiao排序,总共需要4次交换。小蓝找到了很多字符串试图排序,他恰巧碰到一个字符串,需要100次交 换,可是他忘了吧这个字符串...原创 2022-04-03 23:00:00 · 100 阅读 · 0 评论 -
并查集解[合根植物]与[国王的烦恼]
并查集是一种树型的数据结构,用于处理一些不相交集合的合并及查询问题(即所谓的并、查)。比如说,我们可以用并查集来判断一个森林中有几棵树、某个节点是否属于某棵树等。主要构成:并查集主要由一个整型数组pre[ ]和两个函数find( )、join( )构成。数组 pre[ ] 记录了每个点的前驱节点是谁,函数 find(x) 用于查找指定节点 x 属于哪个集合,函数 join(x,y) 用于合并两个节点 x 和 y 。普通并查集所维护的关系是:朋友的朋友是朋友。重点是在关注两个人是否连通,因此他原创 2022-03-25 23:53:06 · 366 阅读 · 0 评论 -
二阶差分及[绝世武功]
二阶差分可以看成是:差分数组+等差数列。之前学习的差分法的应用就是在区间内操作,单一的加减一个固定的数字。(b[i]=a[i]-a[i-1],a[0]=0)然后前缀和就是所求的数组了。但是遇到等差数列时就不能这样去解题了。比如对区间[2,6]加上一个首项为a,公差为d的等差数列,就需要对每一个点进行更改。我们设a为原数组,b为一阶差分数组,c为二阶差分数组。当在[l,r]内加上一个首项是s,公差为d,末项为t=s+(r-l)*d的等差数列:对a的影响:此时a数组对b数组的影响:原创 2022-03-24 14:31:44 · 3162 阅读 · 0 评论 -
小明的彩灯
小明拥有N个彩灯,第i 个彩灯的初始亮度为ai。小明将进行Q次操作,每次操作可选择一段区间,并使区间内彩灯的亮度+x(x可能为负数)。求Q次操作后每个彩灯的亮度(若彩灯亮度为负数则输出0)。输入描述第一行包含两个正整数N,Q,分别表示彩灯的数量和操作的次数。第二行包含N个整数,表示彩灯的初始亮度。接下来Q行每行包含一个操作,格式如下:l r x,表示将区间 l∼r的彩灯的亮度+x。1≤N,Q≤5×10^5,0≤ai≤10^9,1≤l≤r≤N,...原创 2022-03-23 19:24:15 · 1577 阅读 · 8 评论 -
P1177 【模板】快速排序
利用快速排序算法将读入的NN个数从小到大排序后输出。快速排序是信息学竞赛的必备算法之一。对于快速排序不是很了解的同学可以自行上网查询相关资料,掌握后独立完成。(C++ 选手请不要试图使用STL,虽然你可以使用sort一遍过,但是你并没有掌握快速排序算法的精髓。)输入格式第1行为一个正整数N,第2行包含N个空格隔开的正整数ai,为你需要进行排序的数,数据保证了Ai不超过10^9。输出格式将给定的N个数从小到大输出,数之间空格隔开,行末换行且无空格。...原创 2022-03-22 09:25:05 · 219 阅读 · 0 评论 -
P2615 神奇的幻方
幻方是一种很神奇的N*N 矩阵:它由数字1,2,3,⋯⋯,N×N构成,且每行、每列及两条对角线上的数字之和都相同。当N为奇数时,我们可以通过下方法构建一个幻方:首先将1写在第一行的中间。之后,按如下方式从小到大依次填写每个数 K(K=2,3,⋯,N×N):若(K-1) 在第一行但不在最后一列,则将K填在最后一行, (K−1)所在列的右一列; 若(K-1)在最后一列但不在第一行,则将K填在第一列, (K−1)所在行的上一行; 若(K-1)在第一行最后一列,...原创 2022-03-22 00:00:00 · 688 阅读 · 0 评论 -
P2550 彩票摇奖
为了丰富人民群众的生活、支持某些社会公益事业,北塔市设置了一项彩票。该彩票的规则是:每张彩票上印有77个各不相同的号码,且这些号码的取值范围为1\sim331∼33。 每次在兑奖前都会公布一个由七个各不相同的号码构成的中奖号码。 共设置77个奖项,特等奖和一等奖至六等奖。兑奖规则如下:特等奖:要求彩票上77个号码都出现在中奖号码中。 一等奖:要求彩票上有66个号码出现在中奖号码中。 二等奖:要求彩票上有55个号码出现在中奖号码中。 三等奖:要求彩票上有44个号...原创 2022-03-21 03:30:00 · 380 阅读 · 0 评论 -
P5728 旗鼓相当
现有N(N\le 1000)N(N≤1000)名同学参加了期末考试,并且获得了每名同学的信息:语文、数学、英语成绩(均为不超过 150 的自然数)。如果某对学生 <i,j> 的每一科成绩的分差都不大于 5,且总分分差不大于 10,那么这对学生就是“旗鼓相当的对手”。现在想知道这些同学中,有几对“旗鼓相当的对手”?同样一个人可能会和其他好几名同学结对。输入格式第一行一个正整数NN。接下来NN行,每行三个整数,其中第ii行表示第ii名同学的语文、数学、英语成绩。最先读...原创 2022-03-21 01:00:00 · 409 阅读 · 0 评论 -
P1047 校门外的树
某校大门外长度为ll的马路上有一排树,每两棵相邻的树之间的间隔都是11米。我们可以把马路看成一个数轴,马路的一端在数轴00的位置,另一端在ll的位置;数轴上的每个整数点,即0,1,2,\dots,l0,1,2,…,l,都种有一棵树。由于马路上有一些区域要用来建地铁。这些区域用它们在数轴上的起始点和终止点表示。已知任一区域的起始点和终止点的坐标都是整数,区域之间可能有重合的部分。现在要把这些区域中的树(包括区域端点处的两棵树)移走。你的任务是计算将这些树都移走后,马路上还有多少棵树。...原创 2022-03-21 00:30:00 · 159 阅读 · 0 评论 -
P5727 冰雹猜想
给出一个正整数n(n\le 100)n(n≤100),然后对这个数字一直进行下面的操作:如果这个数字是奇数,那么将其乘 3 再加 1,否则除以 2。经过若干次循环后,最终都会回到 1。经过验证很大的数字(7\times10^{11}7×1011)都可以按照这样的方式比变成 1,所以被称为“冰雹猜想”。例如当nn是 20,变化的过程是 [20, 10, 5, 16, 8, 4, 2, 1]。根据给定的数字,验证这个猜想,并从最后的 1 开始,倒序输出整个变化序列。输入格式无输出格式...原创 2022-03-21 00:00:00 · 585 阅读 · 0 评论 -
JAVA实现导弹拦截
题目描述某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。输入导弹依次飞来的高度(雷达给出的高度数据是≤50000的正整数),计算这套系统最多能拦截多少导弹,如果要拦截所有导弹最少要配备多少套这种导弹拦截系统。输入格式1行,若干个整数(个数≤100000)输出格式2行原创 2022-03-16 15:27:37 · 401 阅读 · 0 评论 -
2015年蓝桥省赛题目(大学B组)1~8
三角形面积如图所示。图中的所有小方格面积都是1。那么,图中的三角形面积应该是多少呢?请填写三角形的面积。不要填写任何多余内容或说明性文字。答案:28可以看到三角形所外接的是一个8*8的正方形,把正方形内除目标三角形外的其他三角形面积求出 。(很好求,都是直角三角形)==>(4*6+2*8+4*8)/2=36所以答案就是:64-36=28public class Main{ public static void main(String[] args){原创 2022-03-27 23:45:00 · 151 阅读 · 0 评论 -
出现k次与出现一次
数组中只有一个数出现了1次,其他都出现了k次。请输出只出现1次的数。不规则进制;进制并非只有2、8、10、16进制2个相同的二进制数做不进位加法,结果为010个相同的十进制数做不进位加法,结果为0k个相同的k进制数做不进位加法,结果为0代码如下:public class Main{ public static void main(String[] args) { int[] arr={2,2,2,9,7,7,7,3,3,3,6,6,6,0,0,0}; .原创 2022-02-12 17:01:30 · 337 阅读 · 0 评论 -
2014年蓝桥杯省赛题目(大学B组)
武功秘籍小明到X山洞探险,捡到一本有破损的武功秘籍(2000多页!当然是伪造的)。他注意到:书的第10页和第11页在同一张纸上,但第11页和第12页不在同一张纸上。小明只想练习该书的第81页到第92页的武功,又不想带着整本书。请问他至少要撕下多少张纸带走?这是个整数,请通过浏览器提交该数字,不要填写任何多余的内容。答案:7要注意的是书本2000多页就是1000多张纸叠在一起中间用线缝合,依照题意符合条件的情况大致如图:那么他想要学习第81页到第92页的武功,就需要[80/81原创 2022-02-14 19:48:35 · 253 阅读 · 0 评论 -
2013年蓝桥省赛题目(大学B组)
世纪末的星期曾有邪教称1999年12月31日是世界末日。当然该谣言已经不攻自破。还有人称今后的某个世纪末的12月31日,如果是星期一则会…有趣的是,任何一个世纪末的年份的12月31日都不可能是星期一!! 于是,“谣言制造商”又修改为星期日。1999年的12月31日是星期五,请问:未来哪一个离我们最近的一个世纪末年(即xx99年)的12月31日正好是星期天(即星期日)?请回答该年份(只写这个4位整数,不要写12月31等多余信息)答案:2299代码如下:public c原创 2022-02-09 21:06:16 · 177 阅读 · 0 评论 -
同余方程组
由上可得两个同余方程可得一个线性方程 ,linearEquation(m1,-m2,a2-a1) 可解出y1代回x=a1+m1y1,得:x0=a1+m1y1 ==> x=x0+k*min(m1,m2),得一个新方程:x=x0(mod min(m1,m2))此处涉及的是逐级合并法,最终的x的结果为上一个x关于最后两式子的m的最小公倍数的同余方程,即x=x0(mod min(m(n-1),m(n)))以POJ-1006生理周期为例题题目描述人生来就有三个生理周期,分别为体力、..原创 2022-02-03 23:23:34 · 1168 阅读 · 0 评论 -
求解模线性方程(线性同余方程)
用扩展欧几里德算法求解模线性方程的方法:同余方程ax≡b(mod n)对于未知数x有解,当且仅当b是gcd(a,n)的倍数。且方程有解时,方程有gcd(a,n)个解。求解方程ax≡b(mod n)相当于求解方程ax+ny=b,以典型例题为例:青蛙的约会两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面。它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止。可是它们出发之前忘记了一件很重要的事情,既没有问清楚对方的特征,也没有约定见面的具体位置。不过青蛙原创 2022-01-31 11:28:07 · 434 阅读 · 0 评论 -
欧几里德算法解一步之遥
从昏迷中醒来,小明发现自己被关在X星球的废矿车里。矿车停在平直的废弃的轨道上。他的面前是两个按钮,分别写着“F”和“B”。小明突然记起来,这两个按钮可以控制矿车在轨道上前进和后退。按F,会前进97米。按B会后退127米。透过昏暗的灯光,小明看到自己前方1米远正好有个监控探头。他必须设法使得矿车正好停在摄像头的下方,才有机会争取同伴的援助。或许,通过多次操作F和B可以办到。矿车上的动力已经不太足,黄色的警示灯在默默闪烁...每次进行 F 或 B 操作都会消耗一定的能量。小明飞快地.原创 2022-01-30 12:08:07 · 145 阅读 · 0 评论