算法
文章平均质量分 51
Rosa_Wong
不积跬步无以至千里。
展开
-
约瑟夫环递归求解
约瑟夫环递归求解题目约瑟夫环是一个数学的应用问题:已知m个人(以编号1,2,3...m分别表示)围坐在一张圆桌周围。从编号1开始报数,每次报到k的那个人出列,然后下一个人再从1开始报数。原创 2015-10-31 22:57:13 · 1473 阅读 · 0 评论 -
PAT-L1-049 天梯赛座位分配
解题心得:被这道题目坑了好久,哎,后来发现自己想的算法就不对。最开始想过用多维数据去做,后来干脆直接输出感觉更好一些1.首先要弄清楚,这个题目的关键在于求解每个学校每个队伍的第一个人的座位号idnumber1,对于每个队伍中不是第一个人的人,只需要在idnumber1的基础上加上步长就好了。此时的步长应该是找到当前剩余的没分完的学校就好了2.求解第i+1个学校第一个人的座位号:第一个人...原创 2018-12-20 14:16:17 · 465 阅读 · 0 评论 -
PAT-L1-043 阅览室
解题思路:每读取一行数据的时候,需要判断一下书号是否为0,如果不为0: 判断键值,键值为S标志,表示开始计时。这里需要注意的是同一个书号id,不管读进来多少个单独的S,总是以最新的S对应的时间在作为开始,这样系统才能忽略掉无效的S; 遇到键值为E的数据,且对应的S存在,则可以计算对应的时间区间,次数可以+1了,然后需要删掉对应的S和E的记录。如果对应的S不存在,则跳过。 如果书号为...原创 2018-12-14 21:30:11 · 310 阅读 · 0 评论 -
PAT-L1-039 古风排版
解题注意事项:1.感觉主要的考察点是对数组的操作,主要需要考虑的点是在给二维数组赋值的时候需要考虑到原有输入的字符串是否已经结束了。否则会数组溢出2.我是用python实现的,python对数组的初始化可以作为一个点# 对数组进行批量初始化matrix = [[' ' for i in range(col)] for i in range(row)]3.其他就没什么了,注意输出...原创 2018-12-14 13:41:02 · 527 阅读 · 0 评论 -
PAT-L1-033 出生年
解题注意事项:1.判断是否满足n个数字都不相同的条件的时候应当先前补0操作2.输出的时候应当进行前补0操作这道题目比较简单,很久之前用java写的时候不知道为啥没有通过,最近用python重新写了个,一次过<说明:以后简单的没难度的题目就不更新了,有点难度的再更新上来,欢迎交流>以上是新浪微博中一奇葩贴:“我出生于1988年,直到25岁才遇到4个数字都不相同的年份。...原创 2018-12-14 10:00:00 · 324 阅读 · 0 评论 -
PAT-L1-048 矩阵A乘以B
解题思路:就是普通的矩阵相乘,这道题目同样的算法用python就是会超时,没办法最后用C语言实现了,逻辑是一样的,代码都贴出来L1-048 矩阵A乘以B (15 分)给定两个矩阵A和B,要求你计算它们的乘积矩阵AB。需要注意的是,只有规模匹配的矩阵才可以相乘。即若A有Ra行、Ca列,B有Rb行、Cb列,则只有Ca与Rb相等时,两个矩阵才能相乘。输...原创 2018-12-19 18:01:21 · 503 阅读 · 0 评论 -
PAT-L1-016 查验身份证
这道题目没什么技巧,主要考虑以下几点:1.对于前17位中含有非数字字符的,则是有问题的号码。这种有问题的号码不能再计算加权和,否则会出现校验通过的情况2.该题目的输出不区分重复性,也就是说对于多个有问题的相同的输入,需要对应多个相同的输出。这点最开始的时候我想太多,还排除掉了相同的输出,结果有个案例怎么也通过不了。删掉这段逻辑就好了 L1-016 查验身份证 (15 分)...原创 2018-12-13 17:39:41 · 180 阅读 · 0 评论 -
PAT-L1-020 帅到没朋友
L1-020 帅到没朋友 (20 分)当芸芸众生忙着在朋友圈中发照片的时候,总有一些人因为太帅而没有朋友。本题就要求你找出那些帅到没有朋友的人。输入格式:输入第一行给出一个正整数N(≤100),是已知朋友圈的个数;随后N行,每行首先给出一个正整数K(≤1000),为朋友圈中的人数,然后列出一个朋友圈内的所有人——为方便起见,每人对应一个ID号,为5位数字(从00000到99999),I...原创 2018-12-13 13:58:27 · 592 阅读 · 0 评论 -
PAT-L1-011. A-B
这个题目很坑,同样的算法思路,C++秒过,java怎么也超时,给跪L1-011. A-B时间限制 100 ms内存限制 65536 kB代码长度限制 8000 B判题程序 Standard 作者 陈越本题要求你计算A-B。不过麻烦的是,A和B都是字符串 —— 即从字符串A中把字符串B所包原创 2017-08-21 15:25:37 · 390 阅读 · 0 评论 -
PAT-L1-009. N个数求和
之前用java没跑出来,过了很久重新用python写了一遍跑出来了,原有的java的代码也没有删除,知道问题在哪里了,写在注意点里面这道题目要考虑到细节1.掌握求解最大公约数和最小公倍数的方法——辗转相除法2.考虑最终的结果可能是负数的情况,应该先约分和变为整数和分数的情况后,再添加上符号L1-009. N个数求和时间限制400 ms内存限制65536 kB代码...原创 2017-08-17 16:50:22 · 482 阅读 · 0 评论 -
PAT-L1-010. 比较大小
L1-010. 比较大小原创 2017-08-17 18:49:32 · 576 阅读 · 0 评论 -
PAT-L1-008. 求整数段和
L1-008. 求整数段和时间限制 400 ms内存限制 65536 kB代码长度限制 8000 B判题程序 Standard 作者 杨起帆给定两个整数A和B,输出从A到B的所有整数以及这些数的和。输入格式:输入在一行中给出2个整数A和B,其中-100输出格式:首先顺序输出从A到原创 2017-08-17 13:32:23 · 387 阅读 · 0 评论 -
PAT L1-007. 念数字
L1-007. 念数字时间限制 400 ms内存限制 65536 kB代码长度限制 8000 B判题程序 Standard 作者 翁恺输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出“fu”字。十个数字对应的拼音如下:0: ling1: yi2: er3: san4: s原创 2017-08-17 13:13:31 · 415 阅读 · 0 评论 -
PAT-L1-006. 连续因子
一个正整数N的因子中可能存在若干连续的数字。例如630可以分解为3*5*6*7,其中5、6、7就是3个连续的数字。给定任一正整数N,要求编写程序求出最长连续因子的个数,并输出最小的连续因子序列。输入格式:输入在一行中给出一个正整数N(131)。输出格式:首先在第1行输出最长连续因子的个数;然后在第2行中按“因子1*因子2*……*因子k”的格式输出最小的连续因子序列,其中因子按递增顺原创 2017-08-17 12:50:21 · 239 阅读 · 0 评论 -
PAT-L1-005. 考试座位号
L1-005. 考试座位号时间限制 200 ms内存限制 65536 kB代码长度限制 8000 B判题程序 Standard 作者 陈越每个PAT考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考原创 2017-08-17 10:42:55 · 429 阅读 · 0 评论 -
PAT-L1-003. 个位数统计
L1-003. 个位数统计时间限制 400 ms内存限制 65536 kB代码长度限制 8000 B判题程序 Standard 作者 陈越给定一个k位整数N = dk-1*10k-1 + ... + d1*101 + d0 (0ik-1>0),请编写程序统计每种不同的个位数字出现的次数。例如:给原创 2017-08-16 17:22:10 · 290 阅读 · 0 评论 -
PAT-L1-002. 打印沙漏
PAT刷题备注:题目源自https://www.patest.cn/p/index#testL1-002. 打印沙漏时间限制 400 ms内存限制 65536 kB代码长度限制 8000 B判题程序 Standard 本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下原创 2017-08-16 16:02:45 · 234 阅读 · 0 评论 -
PAT-L1-046 整除光棍
解题思路:由于s可能是一个非常大的书,需要考虑到结果很大的可能,因此结果输出为字符串类型比较合适(不会超长) 具体算法:step1.首先找到一个比输入的x要大的光棍。比如输入为31,则先找到111step2.在进行除法计算的时候,111/31=3······18,发现有余数,那么用181继续除以31,检查是否余数不为0(想不明白的小伙伴可以动动笔写下小学做除法的时候写的竖式计算)s...原创 2018-12-19 10:02:10 · 356 阅读 · 0 评论