
pta甲级
离开那天
这个作者很懒,什么都没留下…
展开
-
1008 Elevator (20分)
1008 Elevator (20分)解题报告原创 2020-07-12 20:39:34 · 191 阅读 · 0 评论 -
1007 Maximum Subsequence Sum (25分)
pat甲级1007 Maximum Subsequence Sum 25分解题报告原创 2020-07-12 10:01:23 · 243 阅读 · 0 评论 -
PAT 1004 Counting Leaves (30分)
Counting Leaves原题题意思路自己写的代码思路改进原题A family hierarchy is usually presented by a pedigree tree. Your job is to count those family members who have no child.Input Specification:Each input file contains one test case. Each case starts with a line containing原创 2020-07-11 22:20:56 · 237 阅读 · 0 评论 -
1021 Deepest Root (25 分)(并查集+图的dfs)
很好的图遍历的入门题看题目戳这主要是这个图有两个性质1、如果图有n个节点,有n-1条边,且只有一个连通块,那么这个图就是树2、符合1的图,从任意一个节点遍历,所能获得的最深节点设为A集合(最深的意思就是遍历不下去的那种点,想不明白继续举例想),然后再从A集合里的任意一个点遍历一遍,所能获得的最深节点设为B集合,那么A∪B的所有节点都是所要的答案。(证明见算法笔记上机训练,其实我也没看证明...原创 2019-05-20 10:21:58 · 224 阅读 · 0 评论 -
1013 Battle Over Cities (25 分)
一道图论水题考虑dfs?还有并查集方法?#include<bits/stdc++.h>using namespace std;const int N=1e5;vector<int> v[N];bool vis[N];void dfs(int x,int t){ if(vis[x]||x==t){ return; } vis[x]=1; for(i...原创 2019-05-17 17:25:53 · 222 阅读 · 0 评论 -
1084 Broken Keyboard (20 分)1029 旧键盘 (20 分)
散列?就是桶的思想吧看题目戳这最近用map上了瘾代码如下#include<bits/stdc++.h>using namespace std;map<char,bool>m;int main(){ string a,b; int fpa=0,fpb=0; cin>>a>>b; while(fpa<a.size()){ ...原创 2019-05-03 16:23:06 · 161 阅读 · 0 评论 -
1095 Cars on Campus (30 分)
这个大模拟写的爽呀看题目戳这不愧为30分甲级题百行代码精髓在于map寻找成对的数据和map累加nowcar注意输入的询问时间一定是递增的所以这里要省一下时间,不然会t代码如下#include<bits/stdc++.h>using namespace std;struct node{ char id[10]; int h,m,s,op,t;}p[10004];...原创 2019-05-03 13:26:29 · 662 阅读 · 0 评论 -
1080 Graduate Admission (30 分)
较难的排序题看题目戳这果然有30分的水准其实题目最重要的是排名的处理以及录取进去的排名判断代码如下#include<bits/stdc++.h>using namespace std;struct node{ int ge,gi,zhi[6],sum,id,r;}p[40006];bool cmp(node x,node y){ if(x.sum!=y.sum)...原创 2019-05-02 18:43:00 · 410 阅读 · 0 评论 -
1083 List Grades (25 分)
一道排序水题看题目戳这没啥坑点了吧代码如下#include<bits/stdc++.h>using namespace std;struct node{ char name[11],id[11]; int sco;}p[100005];bool cmp(node x,node y){ return x.sco>y.sco;}int main(){ in...原创 2019-05-02 17:32:28 · 213 阅读 · 0 评论 -
1075 PAT Judge (25 分)
又是一道模拟排序看题目戳这注意这个题的序号和下标要从1开始坑点不多一遍过代码如下#include<bits/stdc++.h>using namespace std;struct node{ int p[6],sum,id,r,sol; bool flag,vis[6];}user[10004];bool cmp(node x,node y){ if(x.su...原创 2019-05-02 17:19:16 · 150 阅读 · 0 评论 -
1055 The World's Richest (25 分)
排序题看题目戳这坑点还得看题目超时的话是没划100的范围#include<bits/stdc++.h>using namespace std;struct node{ char name[10]; int age,pro;}p[100005];bool cmp(node x,node y){ if(x.pro!=y.pro){ return x.pro>...原创 2019-05-02 12:12:07 · 174 阅读 · 0 评论 -
1028 List Sorting (25 分)
一道排序水题看题目戳这#include<bits/stdc++.h>using namespace std;struct node{ char name[10],id[10]; int sco;}p[100005];bool cmp1(node x,node y){ return strcmp(x.id,y.id)<0;}bool cmp2(node x,n...原创 2019-05-02 11:25:44 · 225 阅读 · 0 评论 -
1025 PAT Ranking (25 分)
不是很难的模拟排序题看题目戳这主要就是看清题目意思输出的时候记得加上总人数我老是忘掉这个代码如下#include<bits/stdc++.h>using namespace std;struct node{ char name[30]; int sco,num,lr,fr;}p[30005],temp[305];bool cmp(node x,node y){...原创 2019-05-01 21:53:01 · 207 阅读 · 0 评论 -
1016 Phone Bills (25 分)
很难的模拟题排序就算了吧。。。这题和模拟比起来排序算什么我用了一个玄学的map我自己都不相信他起作用了这个map很关键省了很多事代码如下下面附了两组数据你们可以试一下还有这个公式挺难推的#include<bits/stdc++.h>using namespace std;struct node{ char name[25]; int mon,day,h,...原创 2019-05-01 21:27:05 · 266 阅读 · 0 评论 -
1012 The Best Rank (25 分)
是个有码量的题总归还是排序看题目戳这也愈发感受到甲级的难度和坑点下面是通过代码百行代码感觉还是有些操作繁琐命名不太对用了个map起到桶的作用用空间换时间#include<bits/stdc++.h>using namespace std;struct node{ char name[15]; int c,m,e,a; int r1,r2,r3,r4,ans...原创 2019-05-01 17:35:39 · 2004 阅读 · 1 评论 -
1062 Talent and Virtue (25 分)
一道排序题看题目戳这我用四个数组模拟四个类别的人只有一个小细节我的cmp函数里的名字按升序排列时这样写就过了return strcmp(x.name,y.name)<0;而return strcmp(x.name,y.name);省去<0则会发生段错误和超时很奇怪我给不出解释以下是通过代码#include<bits/stdc++.h>using na...原创 2019-05-01 16:24:42 · 266 阅读 · 0 评论 -
1082 Read Number in Chinese (25 分)
这字符串处理比较难了看题目戳这这个思路是算法笔记上机训练里的不然用我的方法两百行模拟会死人的就是边读边输出的方法注意空格的输出#include<bits/stdc++.h>using namespace std;string num[]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"},wei[]={"Sh...原创 2019-05-01 15:40:57 · 472 阅读 · 0 评论 -
1077 Kuchiguse (20 分)
一题基础的字符串处理看题目戳这最容易出错的应该是从后面开始找共同后缀时 一旦出现不同立即break此外推荐一下reverse这个algorithm里的东西很好用如果是stl里的容器(比如string,vector)那么就用迭代器string s="abcd";reverse(s.begin(),s.end());当然部分容器也可以使用下面的方法如果是普通的数组int d[]...原创 2019-05-01 12:21:11 · 274 阅读 · 0 评论 -
1035 Password (20 分)
又是一题卡输出看题目戳这注意看懂题目,如果只有多个不修改printf(“There are %d accounts and no account is modified”,n);如果一个printf(“There is 1 account and no account is modified”);注意is和are,account和accounts代码如下#include<bi...原创 2019-05-01 11:59:36 · 203 阅读 · 0 评论 -
1073 Scientific Notation (20 分)1024 科学计数法 (20 分)
一道比较复杂的字符串处理看题目戳这首先这个输入的一定是个科学计数法而且一定是第一位数之后才有小数点所以就比较好处理我的代码略微繁琐稍微改进一下可以让程序更为健壮里面用了string的find函数find可以用于很多stl容器中希望各位去了解一下这么好用的东西像下面的代码 string str="abcde"; int pos1=str.find("de"),pose=str...原创 2019-05-01 11:40:15 · 246 阅读 · 0 评论 -
1005 Spell It Right (20 分)
一道简单的入门字符串处理看题目戳这原创 2019-05-01 10:45:57 · 266 阅读 · 0 评论 -
1061 Dating (20 分)1014 福尔摩斯的约会 (20 分)
一道经典的pta类型题看题目戳这卡条件很严格注意界限我用了stl里string可以用printf输出的特性比如定义了一个string类的str可以这样输出string str="abcd";printf("%s",str.c_str());以下是通过代码#include<bits/stdc++.h>using namespace std;string day[...原创 2019-04-30 20:24:54 · 166 阅读 · 0 评论 -
1001 A+B Format (20 分)
快要饿死了看题目戳这一题字符串处理重点在啥时候出来 , 这个字符#include<bits/stdc++.h>using namespace std;int main(){ int a,b,len=0; int ans[100]; cin>>a>>b; int c=a+b; if(c<0){ c*=-1; printf("-...原创 2019-04-29 13:15:28 · 118 阅读 · 0 评论 -
1058 A+B in Hogwarts (20 分)
算法笔记上机训练上最后一题进制转换依旧很水#include<bits/stdc++.h>#define ll long longusing namespace std;int main(){ int a1,b1,c1,a2,b2,c2; scanf("%d.%d.%d%d.%d.%d",&a1,&b1,&c1,&a2,&b2,&am...原创 2019-04-29 12:06:52 · 183 阅读 · 0 评论 -
1027 Colors in Mars (20 分)
又是一题甲级水题单纯进制转换我写的不够简洁一开始的代码如下#include<bits/stdc++.h>using namespace std;char aa[100],ab[100],ac[100];char z(int x){ if(x<10){ return x+'0'; } if(x==10){ return 'A'; } if(x==11...原创 2019-04-29 11:46:46 · 221 阅读 · 0 评论