PAT_乙
a656418zz
这个作者很懒,什么都没留下…
展开
-
PAT (Basic Level) Practice 1009 说反话(getchar的应用理解)
乙级1009 用java的split()更轻松,这次用C写的话,C没有字符串数组,就建一个结构体来存储吧,这样输出就方便许多了。 感觉题目的重点是“什么时候进行输出”,这样就应该考虑“如何判断回车键”,查了下资料,发现getchar()这个函数可以使用,介绍一下getchar()的用法: 以下介绍来自百度百科: #include<stdio.h> #include<conio....原创 2018-10-18 23:00:25 · 156 阅读 · 0 评论 -
PAT (Basic Level) Practice 1030 完美数列
乙级1030 实在想不出来该怎么在不暴力的情况下写出这题……无奈百度,感谢原作者的思路提供,非常有帮助! PAT 乙级 1030 完美数列(分治策略思考)by csdn-FDProcess 主要是那张gif看懂了就豁然开朗 首先排序(基本) 然后以第一位数为min,再从数组最后一位倒序寻找符合要求的数为止,此时的长度就是数组长+1,先记为第一个max 后来都用max的长度为搜索度量,对数组进行...原创 2018-12-02 15:50:40 · 182 阅读 · 0 评论 -
PAT (Basic Level) Practice 1025 反转链表
乙级1025原创 2018-12-02 15:41:25 · 263 阅读 · 0 评论 -
PAT (Basic Level) Practice 1050 螺旋矩阵
乙级1050 第一次看到时间限制200ms以为是找规律,找了半天没找到,后来才觉得这应该是模拟题,模拟题意将数字“螺旋式”填充进去 1.m x n的确定 遍历找最大公约数 如果是i~N遍历的话 循环到最后出来的值必然是m,然后N/m出来的就是n,并且m必然>n,举个栗子 就像11质数,遍历到最后i=N,那么这时候m=i,必然最大 还有个剪枝的好方法,这题不会在这上面刁难人的,所以怎么做都行: 循...原创 2018-11-29 18:09:14 · 158 阅读 · 0 评论 -
PAT (Basic Level) Practice 1034 有理数四则运算
乙级1034 题意简单粗暴的模拟题,就是非常复杂 首先,我是将数字分成输入的a1b1c1、a2b2c2,以及输出的a3b3c3,c代表的是带分数的整数部分,如果有负数&&c有值,将负数赋予c,这样便于后期输出 其次是理好各种细节处理 1.化简及其效率(测试点4就是测试效率) 2.假分数转换成带分数 3.负数、分子为0、带分数的整数部分为0、计算结果 这四种输出情况 4.计算时的...原创 2018-11-17 15:28:23 · 177 阅读 · 0 评论 -
PAT (Basic Level) Practice 1040 有几个PAT
乙级1040 如果顺着想,找到一个P,开始寻找下一个A,然后继续遍历有几个T,遍历完回去从第二个A继续遍历有几个T再加上去,直到A全部遍历完,这是一轮。 一个for是P,一个for是A,一个for是T,复杂度都至少O(n³)了,且时间限制是150ms,肯定超时,所以这个方法不可取 正确思路:对于每一个AT,都可以和一个P组成PAT,那么先考虑AT的组成,顺着想肯定不可能,那么就逆着想试试: 题目...原创 2018-11-19 18:25:51 · 167 阅读 · 0 评论 -
PAT (Basic Level) Practice 1015 德才论(algorithm sort(begin, end, compare), vector<elementtype>使用
乙级1015 阅读理解题,读懂就好 一共有四类学生“才德全尽”、“ 德胜才 ”、“ “才德兼亡”但尚有“德胜才” ”、“过线学生”,存储数据的方法,可以用结构体数组,也可以用vector(一种动态数组)。前者写起来代码量略多占内存大,后者占内存小,代码量少 每次将数据读入后判断,放入相应的学生类别中 然后输出之前,还要对其进行德分>才分>学号的比重进行排序 坑点1.输入输出数据量很...原创 2018-11-21 14:27:15 · 186 阅读 · 0 评论 -
PAT (Basic Level) Practice 1003 我要通过!(两种解法)
乙级1003 这题和HOJ3788一样,故把那边的sample也拿过来: 题意好理解,就对条件3解释一下: 如果 aPbTc 是正确的,那么 aPbATca 也是正确的,其中 a、 b、 c 均或者是空字符串,或者是仅由字母 A 组成的字符串。 就相当于是先对aPbATca进行操作成aPbTc,这一个新的字符串再对条件1、2、3判断,对于这时候的条件3,aPbTc又是一个新的“aPbATca...原创 2018-11-20 23:00:18 · 277 阅读 · 0 评论 -
PAT (Basic Level) Practice 1022 D进制的A+B(栈的初次应用)
乙级1022 掌握二进制那一套转换流程就可以了,对于任何进制都是这么操作的 由于输出是倒序输出,所以我想到了使用堆栈输出,对于堆栈的使用方法可见我上一条博文: #include使用方法简介 第一次递交的时候返回部分正确,仔细想发现应该将=0的情况也输入进去 代码实现: #include<stdio.h> #include<string.h> #include<ios...原创 2018-11-04 10:58:08 · 210 阅读 · 0 评论 -
PAT (Basic Level) Practice 1021 个位数统计 (Program received signal SIGSEGV, Segmentation fault 解决方法)
乙级1021 第一眼我还以为是背包问题(因为没学过背包有点害怕)后来仔细看了下发现这个比背包简单太多了 各个月饼有总重和总售价,在这里取单价,根据性价比最高的购买就好 对于每个月饼,可以用struct保存它的总价、单价、重量,再排序一下就好 注意格式输出,C的格式输出非常方便易用 代码实现: #include<stdio.h> #include<iostream> #in...原创 2018-10-31 20:15:21 · 263 阅读 · 0 评论 -
PAT (Basic Level) Practice 1054 求平均值
乙级1054 注意审题! 其实应该算是一个简单模拟题,重点是审题 当合格数只有1的时候,输出的字符串是number而不是numbers(测试点3) 因为输入的东西什么都可以有,所以用字符串保存输入的值进行判断 长度没必要考虑,1是因为测试点没有考,主要是不知道000000123.2这种用例符不符合出题人的“心思” 负号、小数点的位置,负号若有肯定是第一位,小数点若有肯定不能跟在负号后面。 我实...原创 2018-12-03 17:08:50 · 326 阅读 · 0 评论