随笔分类 -  PAT甲级

摘要:``` //打表进制转换 //10进制转为13进制,只不过13进制的输出方式与常规形式不同,这里采用的是火星文。输入的数据最大只到169, //也就是说对应的13进制最多只有两位,所以不用使用数组存储每个转化后进制位,直接模拟即可 // //13进制的火星文转化为10进制,首先获取其字符串的长度。如 阅读全文
posted @ 2019-02-13 16:46 Western_Trail 阅读(107) 评论(0) 推荐(0)
摘要:题意 输入k个程序的每个程序的满分分数,再输入m条用户提交的记录。按要求进行分数的排序最后输出。是一道结构体的复杂排序 思路分析 首先明确本题的输出要求: 编译失败的提交分数为 1。 只有至少成功提交过一次程序(没有编译失败),的用户才会被排序。可以通过在结构体中设置一个 标志实现,当输入的grad 阅读全文
posted @ 2019-02-11 19:32 Western_Trail 阅读(132) 评论(0) 推荐(0)
摘要:题意 找出一个序列中最长的对称子序列长度 思路分析 暴力枚举对称子序列的两个头尾,i,j。然后判断这两个字符之间的字符串能否构成对称子序列,若能则更新最大的子序列长度。最大输出最大的子序列长度 注意点: 输入不能使用cin,scanf,因为输入的字符串中有空白字符(空格),无法得到正确的输入 也不能 阅读全文
posted @ 2019-02-10 15:02 Western_Trail 阅读(102) 评论(0) 推荐(0)
摘要:题意 模拟分数的四则运算 思路分析 模拟,在输出过程中,若分子 分母,需要分离出整数部分与分数部分,并且如果项为负数需要带上 c++ include using namespace std; typedef long long ll; struct fraction{ ll up; //分子 ll 阅读全文
posted @ 2019-02-08 22:10 Western_Trail 阅读(145) 评论(0) 推荐(0)
摘要:``` //题意:求一个数的最大的连续因数个数,例如: 8064 = 2 3 4 6 7 8 // 最大的连续因子个数为3个:{2,3,4},{6,7,8}。 // 如果存在相同个数的连续子序列,输出较小的那个。 //思路分析:如果输入n为素数,那么因数只可能为自己,因为题目说了不包括1。故第一行输 阅读全文
posted @ 2019-02-08 16:13 Western_Trail 阅读(156) 评论(0) 推荐(0)
摘要:题意 爱丁顿喜欢骑车,并且记录下自己n天的每天的骑行路程,定义了一个“爱丁顿数"E,为满足刚好有E天骑行路程超过E的最大整数。 思路分析 此题不应使用Hash[]做。 对数组从大到小排序,而后枚举天数e从1到n,当a[e] using namespace std; const int maxn = 阅读全文
posted @ 2019-02-04 18:05 Western_Trail 阅读(316) 评论(0) 推荐(0)
摘要:题意: 输入准考证号,考试分数。然后输入查询命令,对每个命令按照要求模拟输出。 思路分析: 命令为 :表示查询考_级的所有记录,按照成绩从大到小排名,成绩相同则按照准考证号的字典序从小到大排序。于是得到第一个sost的 函数为: ,最好改成用 这样更快 注意这两点就能完全AC了! 参考代码: //1 阅读全文
posted @ 2019-02-03 15:33 Western_Trail 阅读(332) 评论(0) 推荐(0)
摘要:题意 输入考生的ID,G_P,G_M,G_F;按照一定的要求筛选出不符合要求的学生,并对符合要求的考生信息进行排序。 思路分析 因为输入考生的G_P,G_M,G_F是分块进行的,所以可以开一个 存储 到结构体 的映射。输入完学生 后,使用 可以找到对应id的value。注意不要使用 ,遍历时使用迭代 阅读全文
posted @ 2019-02-03 15:31 Western_Trail 阅读(185) 评论(0) 推荐(0)
摘要:题意: 就是给出一个科学计数法的字符串,要求输出表示的整数 思路分析: 首先考虑数的正负号,如果字符串第一个字符s[0]是' ',则应先输出' ',否则原样输出。之后获取指数的值,在此之前需要先取得'E'的下标index,而后从index+2向后枚举字符串,并将字符串转为10进制,即为指数exp。 阅读全文
posted @ 2019-01-30 18:03 Western_Trail 阅读(243) 评论(0) 推荐(0)
摘要:题意 已知 N 名玩家中有 2 ⼈扮演狼⼈⻆⾊,有 2 ⼈说的不是实话,有狼⼈撒谎但并不是所有狼 ⼈都在撒谎。要求你找出扮演狼⼈⻆⾊的是哪⼏号玩家,如果有解,在⼀⾏中按递增顺序输出 2 个狼 ⼈的编号;如果解不唯⼀,则输出最⼩序列解;若⽆解则输出 No Solution 思路分析 开数组 表示每一个 阅读全文
posted @ 2019-01-30 18:02 Western_Trail 阅读(176) 评论(0) 推荐(0)
摘要:题意 刚开始做这道题真是不好理解讲的什么鬼,直接举例子吧。 当D = 1时。 第一项:1; 第二项:因为第一项有1个1,所以为:1 第三项:因为第二项有2个1,所以为:1 第四项:因为第三项有1个1,1个2,所以为:1 ,2 第五项:因为第四项有2个1(注意要求连续,不是3个),1个2,1个1,所以 阅读全文
posted @ 2019-01-30 17:47 Western_Trail 阅读(164) 评论(0) 推荐(0)
摘要:题意: 找出n个字符串的最长公共后缀 思路分析 在输入字符串的过程中,求得前一个字符串的长度len1,求得当前字符串的长度len2,而后分别从两个字符串的末尾向前枚举比较,并且记录后缀的长度,就这样两两比较,直到输入完毕。这样最终就获得了最长公共后缀长度index。  获得了最长公共后缀长 阅读全文
posted @ 2019-01-28 17:05 Western_Trail 阅读(184) 评论(0) 推荐(0)
摘要:题意 输入4个字符串,输出的日期为第一个字符串和第二个字符串中第一个相等的大写字母,输出的小时为第一个字符串和第二个字符串中第二个相等的大写字母,输出的分钟为第三个字符串和第四个字符串中第一个相等的英文字母下标。 思路 输出day:因为要根据大写字母输出相应的日期,所以创建一个日期Hash[]映射方 阅读全文
posted @ 2019-01-27 15:30 Western_Trail 阅读(173) 评论(0) 推荐(0)
摘要:题意 输入一串字符串,将字符串按照U型打印出来。要求是U形两边的高尽可能的高并且相等 思路分析 要求的U形:左高为n1,右高n2,中宽n3。n1+n2+n3 2 = n(n为字符串长度),n ​1 ​​ =n ​3 ​​ =max { k | k≤n ​2 ​​ for all 3≤n ​2 ​​ 阅读全文
posted @ 2019-01-26 16:24 Western_Trail 阅读(109) 评论(0) 推荐(0)
摘要:题意 模仿多项式相乘 思路 这道题与PAT A1002多项式的类型类似,也是用一个P[]存储指数到系数的映射关系,p[4]代表指数为4的项的系数,不过难点在于如何模拟乘法运算。首先先存储第一个多项式,也就是先存储第一次输入,而后在输入第二个多项式的时候,做边输入边处理的操作:每输入一个项的指数和系数 阅读全文
posted @ 2019-01-24 19:09 Western_Trail 阅读(85) 评论(0) 推荐(0)
摘要:题意: 模拟两个多项式相加的过程 思路 用P[maxn]表示每一个指数项的系数,默认为0,p[1]表示指数为1的项的系数值,p[4]表示指数为4的项的系数值 边输入边处理,每次输入一对指数e,系数c,则对应p[e] += c; 连续输入两个多项式 最后枚举指数0到maxn,如果对应指数的系数不等于0 阅读全文
posted @ 2019-01-24 14:27 Western_Trail 阅读(151) 评论(0) 推荐(0)
摘要:题意 现在你手上有54张按顺序排好的扑克牌,分别是: { s1,s2,s3,...,s13,H1, H2, ..., H13,C1, C2, ..., C13,D1, D2, ..., D13,J1, J2 } ,给定洗牌的次数k,洗牌要求的顺序,按照要求的顺序对你手上的54张扑克牌进行洗牌。现在举 阅读全文
posted @ 2019-01-24 14:25 Western_Trail 阅读(212) 评论(0) 推荐(0)