自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 swap函数(两个整数交换)

否则调用函数改变的只是形参,该地址上数目大小不变。非常易错,必须用指针。

2023-09-07 20:02:03 263

原创 最长公共子序列Lcs -公共字符串

给出两个字符串 A\ BA B ,求 AA 与 BB 的最长公共子序列( 子序列不要求是连续的)。比如两个串为: AA : abcicbaabcicba , BB : abdkscababdkscab abab 是两个串的子序列, abcabc 也是, abcaabca 也是,其中 abcaabca 是这两个字符串最长的子序列。输出最长的子序列,如果有多个,随意输出 1 个。A,BA,B 的长度 \le 1000≤1000。第 1 行:字符串 A 第 2 行:字符串 B。

2023-05-24 19:23:07 153

原创 Prime ring problem(素数环问题)

【代码】Prime ring problem(素数环问题)

2023-05-11 16:19:15 162

原创 分解质因数

已知正整数nn是两个不同的质数的乘积,试求出两者中较大的那个质数。一个正整数pp,即较大的那个质数。

2023-05-09 20:14:04 101

原创 A - 最长上升子序列

给出一个由 n(n\le 5000)n(n≤5000) 个不超过 10^6106 的正整数组成的序列。分别取出 11、22、33、44 即可。第一行,一个整数 nn,表示序列长度。第二行有 nn 个整数,表示这个序列。取出一些数字排在一起,这些数字是。最长上升子序列是指,从原序列中。这是一个简单的动规板子题。

2023-04-24 21:04:58 41

原创 开餐馆-dp01背包-动态规划

我们用一个整数序列 m_1, m_2, ... m_nm1​,m2​,...mn​ 来表示他们的相对位置。第 22 行: nn 个地点的位置 m_1 , m_2, ... m_n ( 1000000 > m_i > 0m1​,m2​,...mn​(1000000>mi​>0 且为整数, 升序排列);第 33 行: nn 个地点的餐馆利润 p_1 , p_2, ... p_n ( 1000 > p_i > 0p1​,p2​,...pn​(1000>pi​>0 且为整数)。标准的输入包含若干组测试数据。

2023-04-24 20:16:42 221

原创 L1-019 谁先倒-天梯赛pat

酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字。如果谁比划出的数字正好等于两人喊出的数字之和,谁就输了,输家罚一杯酒。两人同赢或两人同输则继续下一轮,直到唯一的赢家出现。在第一行中输出先倒下的那个人:A代表甲,B代表乙。第二行中输出没倒的那个人喝了多少杯。输入第一行先后给出甲、乙两人的酒量(不超过100的非负整数),以空格分隔。下面给出甲、乙两人的酒量(最多能喝多少杯不倒)和划拳记录,请你判断两个人谁先倒。其中喊是喊出的数字,划是划出的数字,均为不超过100的正整数(两只手一起划)。

2023-04-20 20:40:24 39

原创 L1-018 大笨钟

微博上有个自称“大笨钟V”的家伙,每天敲钟催促码农们爱惜身体早点睡觉。不过由于笨钟自己作息也不是很规律,所以敲钟并不定时。一般敲钟的点数是根据敲钟时间而定的,如果正好在某个整点敲,那么“当”数就等于那个整点数;如果过了整点,就敲下一个整点数。另外,虽然一天有24小时,钟却是只在后半天敲1~12下。例如在23:00敲钟,就是“当当当当当当当当当当当”,而到了23:01就会是“当当当当当当当当当当当当”。在午夜00:00到中午12:00期间(端点时间包括在内),笨钟是不敲的。

2023-04-20 19:59:33 71

原创 L1-017 到底有多二

一个整数“犯二的程度”定义为该数字中包含2的个数与其位数的比值。如果这个数是负数,则程度增加0.5倍;如果还是个偶数,则再增加1倍。例如数字-13142223336是个11位数,其中有3个2,并且是负数,也是偶数,则它的犯二程度计算为:3/11×1.5×2×100%,约为81.82%。本题就请你计算一个给定整数到底有多二。在一行中输出N犯二的程度,保留小数点后两位。输入第一行给出一个不超过50位的整数N。

2023-04-20 19:35:52 64 1

原创 L1-015 跟奥巴马一起画方块-四舍五入向上取整

美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧!要四舍五入所以+1再/2;可以实现。

2023-04-19 21:15:48 41

原创 牛客-a^b-位运算快速幂

牛客上通过率60%?!什么鬼!!!内存限制超出换句话说,n太大了,超过了计算机的存储限度,造成溢出,故所保留的值并非真正的n这样的代码还有一个问题:时间复杂度。O(N)实在太大,容易超时。所以需要用快速幂次方化的越小越不会超内存直接总结公式方法一(2^5)%3=((2*2)%3*(2*2)%3*(2%3))%3放法2(a * b) % N 等价于 ( (a % N) * (b % N) ) % N两种都实现了不断减少次方的效果来源:牛客网。

2023-04-19 20:50:56 51

原创 L1-012 计算指数

真的没骗你,这道才是简单题 —— 对任意给定的不超过 10 的正整数 n,要求你输出 2n。不难吧?

2023-04-18 21:39:15 32

原创 L1-011 A-B

本题要求你计算A−B。不过麻烦的是,A和B都是字符串 —— 即从字符串A中把字符串B所包含的字符全删掉,剩下的字符组成的就是字符串A−B。

2023-04-18 21:30:25 62

原创 L1-010 比较大小

在一行中将3个整数从小到大输出,其间以“->”相连。本题要求将输入的任意3个整数从小到大输出。输入在一行中给出3个整数,其间以空格分隔。

2023-04-18 20:54:18 33

原创 L1-009 N个数求和-辗转相除法

另外,负数的符号一定出现在分子前面。输出上述数字和的最简形式 —— 即将结果写成整数部分 分数部分,其中分数部分写成分子/分母,要求分子小于分母,且它们没有公因子。如果结果的整数部分为0,则只输出分数部分。这条算法基于一个定理:两个正整数 a 和 b(a 大于 b),它们的最大公约数等于 a 除以 b 的余数 c 和 较小数 b 之间的最大公约数。它的具体做法是:用较大数除以较小数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。

2023-04-17 21:58:24 63

原创 L1-007 念数字

输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。

2023-04-13 21:47:34 32

原创 L1-005 考试座位号

每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座。但有些考生迟到了,试机已经结束,他们只能拿着领到的试机座位号码求助于你,从后台查出他们的考试座位号码。

2023-04-12 21:38:52 38

原创 L1-003 个位数统计

0),请编写程序统计每种不同的个位数字出现的次数。例如:给定 N=100311,则有 2 个 0,3 个 1,和 1 个 3。对 N 中每一种不同的个位数字,以 D:M 的格式在一行中输出该位数字 D 及其在 N 中出现的次数 M。要求按 D 的升序输出。每个输入包含 1 个测试用例,即一个不超过 1000 位的正整数 N。给定一个 k 位整数 N=d。

2023-04-12 19:40:57 49

原创 Monkey and Banana

有nn种类型的砖块,每种类型的砖块都有无限个,第ii块砖块的长宽高分别用(x_i,y_i,z_i)(xi​,yi​,zi​)来表示。在构建塔时,当且仅当A砖块的长和宽都分别小于B砖块的长和宽时,A砖块才能放到B砖块的上面。每个测试用例的第一行包含一个整数nn,代表不同种类的砖块数目n \leq 30n≤30。同时,由于砖块是可以旋转的,每个砖块的3条边可以组成6种不同的长宽高。接下来nn行,每行33个数,分别表示砖块的长宽高。你的任务是计算最高可以堆出的砖块们的高度。当n=0n=0的时候,程序结束。

2023-04-09 20:54:45 99 2

原创 拦截导弹-递减子序列-动态规划

某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,并观测到导弹依次飞来的高度,请计算这套系统最多能拦截多少导弹。拦截来袭导弹时,必须按来袭导弹袭击的时间顺序,不允许先拦截后面的导弹,再拦截前面的导弹。第二行,输入k个正整数,表示k枚导弹的高度,按来袭导弹的袭击时间顺序给出,以空格分隔。第一行,输入雷达捕捉到的敌国导弹的数量k(k

2023-04-09 10:52:23 33

原创 Super Jumping! Jumping! Jumping!-动态规划

它由一个棋盘(棋盘)和一些棋子(棋子)组成,所有棋子都用正整数或“开始”或“结束”标记。玩家从起点开始,最后必须跳入终点。在跳跃的过程中,玩家将访问路径中的棋子,但是每个人都必须从一个棋子跳到另一个棋子绝对大(你可以假定起点是最小的,终点是最大的)。一跳可以从一个棋子跳到另一个棋子,也可以跨越许多棋子,甚至你可以直接从起点跳到终点。在这种情况下你当然得零分一个运动员是胜利者,只要他能根据他的跳跃解决方案得到更大的分数。注意,你的分数来自于你跳跃路径中棋子的价值之和。你的任务是根据给定的棋子列表输出最大值。

2023-04-06 21:03:43 80

原创 Stock Exchange(LIS优化)-动态规划加二分

求最长上升子序列(LIS),由于数据范围比较大,普通的求最长上升子序列的方法时间复杂度为o(n^2),这里明显会超时,所以需要用时间复杂度为o(nlogn)的方法来优化。一定要手拟几个样例,演算一下,不然想不明白二分的过成;

2023-04-04 21:10:39 51

原创 Longest Ordered Subsequence-最长有序子序列-动态规划

xnk想要在家里造一个上楼的楼梯,众所周知,由于是上楼,而且xnk也不傻,一个楼梯的前一级肯定要小于下一级(即满足严格单调上升),由于xnk是x里村首富,当然要彰显自己的贵族气质,所以他希望楼梯越长越好。这个版本答案仍然时长时长很长,用二分好一些,用二分时长短一点,但我现在还不会,哈哈哈,会了再写个二分版本的。现在有n个木板(n

2023-04-03 20:18:51 76

原创 洛谷1176-路径统计2-动态规划递推

表示坐标(x, y)(x,y)上有障碍不能通过,且有1≤x, y≤n1≤x,y≤n,且x, yx,y至少有一个大于11,并请注意障碍坐标有可能相同。一个N \times NN×N的网格,你一开始在(1,1)(1,1),即左上角。每次只能移动到下方相邻的格子或者右方相邻的格子,问到达(N,N)(N,N),即右下角有多少种方法。对于100\%100%的数据,有N≤1000,M≤100000N≤1000,M≤100000。这个题需要先总结递推公式a[i][j]=a[i-1][j]+a[i][j-1],

2023-04-02 17:26:56 429

原创 acwing-前缀和子序列

所有测试点满足 1≤n,m≤1051≤n,m≤105,1≤ai≤1091≤ai≤109,1≤l≤r≤n1≤l≤r≤n。如果将该序列从小到大排序,则可以得到另一个长度为 nn 的正整数序列 b1,b2,…,bnb1,b2,…给定一个长度为 nn 的正整数序列 a1,a2,…,ana1,a2,…第二行包含 nn 个正整数 a1,a2,…,ana1,a2,…前 33 个测试点满足 1≤n,m≤101≤n,m≤10。接下来 mm 行,每行包含一个询问,格式如题面描述。共 mm 行,每个询问输出一行答案。

2023-04-02 16:14:26 45

原创 acwing-前缀和序列-暴力写法骗分

所有测试点满足 1≤n,m≤1051≤n,m≤105,1≤ai≤1091≤ai≤109,1≤l≤r≤n1≤l≤r≤n。如果将该序列从小到大排序,则可以得到另一个长度为 nn 的正整数序列 b1,b2,…,bnb1,b2,…,ana1,a2,…第二行包含 nn 个正整数 a1,a2,…,ana1,a2,…1 l r,请你计算并输出 ∑i=lrai∑i=lrai。2 l r,请你计算并输出 ∑i=lrbi∑i=lrbi。前 33 个测试点满足 1≤n,m≤101≤n,m≤10。第三行包含整数 mm。

2023-04-02 11:54:46 63

原创 计蒜客- 蒜头君的工厂

输出仅有一行,该行只有一个整数,表示最多有多少件产品同时在生产线上生产。现在蒜头君拿到这本记录本以后想知道最多有多少件产品同时在生产线上生产。个产品,每个产品会在记录本上记录开始生产的时间。注意:在同一时刻总是开始生产的产品先进入流水线。,表示一件产品开始生产的时间和完成生产的时间。输入第一行只有一个整数。,表示记录本上共记录了。蒜头君的工厂需要生产。

2023-03-30 21:32:55 331

原创 acwing-4862.浇花

为了让花能够活过整个假期,公司领导安排了 mm 个人(编号 1∼m1∼m)来公司浇花,其中第 ii 个人在第 [ai,bi][ai,bi] 天每天来公司浇一次花。领导是按照时间顺序安排的浇花任务,保证了对于 1≤i≤m−11≤i≤m−1,均满足:bi≤ai+1bi≤ai+1。给定领导的具体安排,请你判断,花能否活过整个假期,如果不能,请你输出它是在第几天死的,以及那一天的具体浇水次数。所有测试点满足 1≤n,m≤1051≤n,m≤105,1≤ai≤bi≤n1≤ai≤bi≤n。如果花能活过整个假期,则输出。

2023-03-30 20:27:05 245

原创 hduoj1559 最大子矩阵-二维前缀和

输入数据的第一行为一个正整数T,表示有T组测试数据。每一组测试数据的第一行为四个正整数m,n,x,y(0

2023-03-27 20:52:57 44

原创 红与黑-搜索-简单题解

由于zzy学长只喜欢黑色和红色,所以每块瓷砖的颜色是红色或者黑色。zzy学长站在一块黑色瓷砖上, 他可以从这块瓷砖移动到相邻(即,上下左右)的四块瓷砖中的一块。但是他只能移动到黑色瓷砖上,而不能移动到红色瓷砖上。编写一个程序,通过重复上述动作来计算zzy学长可以达到的黑色瓷砖的数量。对于每组数据,你的程序应输出一行,其中包含hjq学长可以到达的黑色瓷砖数目。(初始学长所站在的黑色瓷砖也要包含在内)H表示瓷砖的行数,W表示瓷砖的列数。'@' 表示zzy学长初始站在的瓷砖。瓷砖的颜色用字符表示,如下所示。

2023-03-15 21:30:35 122

原创 马走日-深搜回溯-超好懂题解

每一组测试数据包含一行,为四个整数,分别为棋盘的大小以及初始位置坐标n,m,x,y。(0

2023-03-02 19:51:00 331

原创 牛客1019扫雷-暴力搜索

小sun上课的时候非常喜欢玩扫雷。他现小sun有一个初始的雷矩阵,他希望你帮他生成一个扫雷矩阵。扫雷矩阵的每一行每一列都是一个数字,每个数字的含义是与当前位置相邻的8个方向中,有多少个雷(在下图中,雷用*表示);如果当前位置就是雷的话,仍输出一个*。比如初始的雷矩阵如下:......***.*..*.*对应的数字矩阵为:012213***4*42*3*输入描述:第一行两个整数n,m,代表矩阵有n行m列接下来共n行,每行m个字符输出描述:输出共n行m列,为扫雷矩阵。示例1。

2023-03-01 21:31:28 308

原创 数列极差-stl

1,如此下去直至黑板上剩下一个数为止,在所有按这种操作方式最后得到的数中,最大的为 \maxmax,最小的为 \minmin, 则该数列的极差定义为 M=\max -\min。由于佳佳忙于准备期末考试,现请你帮助他,对于给定的数列,计算出相应的极差 M。个正整数组成的数列,要求佳佳进行如下操作:每次擦去其中的两个数 a。,然后在数列中加入一个数 a\times b+1。接下来的一行有一个 00,表示数据结束。佳佳的老师在黑板上写了一个由 n。输出只有一行,为相应的极差 d。行中,每行输入一个正整数。

2023-03-01 19:38:21 184

原创 买房子问题

蒜头君从现在开始工作,年薪 NN万。他希望在蒜厂附近买一套 6060 平米的房子,现在价格是 200200 万。假设房子价格以每年百分之 KK增长,并且蒜头君未来年薪不变,且不吃不喝,不用交税,每年所得 NN万全都积攒起来,问第几年能够买下这套房子?(第一年年薪 NN万,房价 200200 万)

2023-02-20 20:06:20 46

原创 简单密码-c语言

Julius Caesar 曾经使用过一种很简单的密码。对于明文中的每个字符,将它用它字母表中后 55 位对应的字符来代替,这样就得到了密文。比如字符'A'用'F'来代替。如下是密文和明文中字符的对应关系。

2023-02-13 19:08:06 214 1

空空如也

空空如也

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

TA关注的人

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