概况(复盘)

  • 打完最后的分数是170,三等还差5分
  • 除了模板25分是我的锅之外(明明考前还看了的),,
  • 还有L1最后一题列标号567没减3扣了2分,L2第二题身份证号码是数字扣了4分。
  • 以及改了一个多小时(。。。)L3题目没来得及看

L2-033 简单计算器 (25分)

//开两个栈直接模拟
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
int main(){int n;  cin>>n;stack<int>s1;stack<char>s2;for(int i = 1; i <= n; i++){int x;  cin>>x;  s1.push(x);}for(int i = 1; i < n; i++){char ch;  cin>>ch; s2.push(ch);}while(s1.size()>1){int n1 = s1.top();  s1.pop();int n2 = s1.top();  s1.pop();char op = s2.top();  s2.pop();if(op=='+')s1.push(n2+n1);else if(op=='-')s1.push(n2-n1);else if(op=='*')s1.push(n2*n1);else{if(n1==0){cout<<"ERROR: "<<n2<<"/0\n";return 0;}s1.push(n2/n1);}}cout<<s1.top();return 0;
}

L2-034 口罩发放 (25分)

//+ 在D天里发口罩,每个人获得要间隔P天。
//+ 给出每天的申请记录和口罩供应,包括string,id,siates,time;按照先后顺序判断每天发给谁。
//+ 并统计状态出问题的人,汇总输出。
//+ 直接模拟即可。能获得口罩的人,P天内没拿过,并且每天排名前几个。
#include<bits/stdc++.h>
using namespace std;struct node{string name, id; int states; int t1, t2;};//申请,出现时间
bool cmp(node a, node b){return a.t1!=b.t1?a.t1<b.t1:a.t2<b.t2;}
int checkid(string s){if(s.size() != 18)return 0;for(int i = 0; i < 18; i++)//WA4,5,身份证必须是数字if(!isdigit(s[i]))return 0;return 1;
}int main(){int d, p;  cin>>d>>p;map<string,int>mp;//相隔天数vector<node>ans; set<string>se;//生病的人for(int i = 1; i <= d; i++){int t, c;  cin>>t>>c;vector<node>tmp;for(int j = 1; j <= t; j++){string name, id;  int states, mm, hh; char ch;cin>>name>>id>>states>>hh>>ch>>mm;if(checkid(id)){tmp.push_back({name,id,states,hh*60+mm,j});if(states==1 && se.count(id)==0){ans.push_back({name,id,states,hh*60+mm,j});se.insert(id);}}}if(tmp.size()==0 || c==0)continue;sort(tmp.begin(),tmp.end(), cmp);for(int j = 0; j < tmp.size() && c; j++){if(mp.count(tmp[j].id)==0 || mp[tmp[j].id]+p+1<=i){mp[tmp[j].id] = i;c--;cout<<tmp[j].name<<" "<<tmp[j].id<<"\n";}}}for(int i = 0; i < ans.size(); i++){cout<<ans[i].name<<" "<<ans[i].id<<"\n";}return 0;
}

L2-035 完全二叉树的层序遍历 (25分)

//满二叉树后序转先序,输出层次遍历
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int maxn = 100010;int n, a[maxn];
int Tree[maxn], r;
void build(int x){if(x>n)return ;build(x<<1);build(x<<1|1);Tree[x] = a[++r];
}int main(){cin>>n;for(int i = 1; i <= n; i++)cin>>a[i];build(1);for(int i = 1; i <= n; i++){if(i!=1)cout<<" ";cout<<Tree[i];}return 0;
}

L2-036 网红点打卡攻略 (25分)

//+ n个点m条带权边。给出k条路径,判断能否从v1出发经过每个点一次并返回v1,输出最短的路径。
//+ n<200 所以邻接矩阵存个图,直接暴力枚举就行。
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int inf = 1e9+10;
const int maxn = 220;
int e[maxn][maxn], vis[maxn];
int main(){int n, m;cin>>n>>m;for(int i = 0; i <= n; i++)for(int j = 0; j <= n; j++)e[i][j] = inf;for(int i = 1; i <= m; i++){int u, v, w;cin>>u>>v>>w;e[u][v] = e[v][u] = w;}int k;  cin>>k;int cnt = 0, po = 0, hf = inf;for(int i = 1; i <= k; i++){memset(vis,0,sizeof(vis));int kk;  cin>>kk;int la = 0, tmphf = 0, ok = 1;for(int j = 1; j <= kk; j++){int x;  cin>>x;if(e[la][x]!=inf && !vis[x]){//cout<<tmpfile<<" "<<e[la][x]<<"\n";tmphf += e[la][x];//cout<<tmpfile<<"\n";la = x;vis[x]++;}else{ok = 0;}}for(int i = 1; i <= n; i++){if(vis[i]!=1)ok = 0;}if(ok && e[la][0] != inf){tmphf += e[la][0];cnt++;//cout<<i<<": "<<tmphf<<"\n";if(tmphf < hf){hf = tmphf;po = i;}}}cout<<cnt<<"\n";cout<<po<<" "<<hf<<"\n";return 0;
}

【2020团体程序设计天梯赛】L2部分(PTA,L2-033到L2-036)题解代码复盘相关推荐

  1. 2020团体程序设计天梯赛题解(部分)

    文章目录 个人题解:这里我只写我个人认为应该写的题解,太简单的就不写了 L2-2 口罩发放 (25分) 思路:正解 L2-3 完全二叉树的层序遍历 (25分) 思路:正解 L2-4 网红点打卡攻略 ( ...

  2. 2019团体程序设计天梯赛L1 L1-1 PTA使我精神焕发L1-2 6翻了L1-3 敲笨钟L1-4 心理阴影面积L1-5 新胖子公式L1-6 幸运彩票L1-7 吃鱼还是吃肉

    L1-1 PTA使我精神焕发 (5 分) 以上是湖北经济学院同学的大作.本题就请你用汉语拼音输出这句话. 输入格式: 本题没有输入. 输出格式: 在一行中按照样例输出,以惊叹号结尾. 输入样例: 无 ...

  3. 【2020团体程序设计天梯赛】L1部分(PTA,L1-065到L1-072)题解代码

    概要 L1一共8题,5分,10分,15分,20分各两题. 5分题一般会输入输出就行,10分题就是一个循环或者选择结构 15分题有简单的模拟和查找,20分题是稍微繁琐的简单模拟这样. L1-065 嫑废 ...

  4. 【2020团体程序设计天梯赛】L2-3 完全二叉树的层序遍历(后序遍历转层次遍历)

    problem 7-11 完全二叉树的层序遍历 一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是完美二叉树.对于深度为 D 的,有 N 个结点的二叉树,若其结点对应于相同深度完美二叉树的 ...

  5. PTA|团体程序设计天梯赛-练习题库集

    文章目录 关于爬取脚本的编写 L1-001 Hello World! (5 分) L1-002 打印沙漏 (15 分) L1-003 个位数统计 (15 分) L1-004 计算摄氏温度 (5 分) ...

  6. PTA团体程序设计天梯赛篇(五)---- 难题篇一(30分题目)

    PTA团体程序设计天梯赛 数据结构类型 L3-002 特殊堆栈(树状数组) L3-003 社交集群(并查集) 搜索 L3-004 肿瘤诊断(三维bfs) 确保bfs只遍历一次的方法 图论 L3-005 ...

  7. 【CCCC】PAT : 团体程序设计天梯赛-练习集 L2 答案,题解,附代码

    [CCCC]PAT : 团体程序设计天梯赛-练习集 L2 答案 鉴定完毕,全部水题 ヾ(•ω•`)o 知识点分类(32): 1.树锯结构(9):二叉树的存储,编号,遍历顺序转换,求深度,底层节点,从底 ...

  8. PTA团体程序设计天梯赛-练习集(3)

    PTA团体程序设计天梯赛-练习集 L1-001 Hello World (5 分) 这道超级简单的题目没有任何输入. 你只需要在一行中输出著名短句"Hello World!"就可以 ...

  9. 2020年团体程序设计天梯赛L1题目集(题目+代码)

    2020年11月团体程序设计天梯赛 第一次参加天梯赛,除了在门口冻得瑟瑟发抖,还有按不动的shift之外一切都还好- tip:不知道啥原因代码上基本没有注释,希望dalao们不要介意~ L1-1 嫑废 ...

最新文章

  1. HTTP长连接服务器端推技术
  2. STM32f103 can的两个接收fifo使用方法
  3. 自动批量修改linux用户密码
  4. CF1413F. Roads and Ramen(树的直径,线段树)
  5. codeforces1486 F. Pairs of Paths(倍增+树上数数)
  6. 了解java.nio.file.Path – 1
  7. ev10aq190a采集电路图_EV10AQ190A数模转换器
  8. MongoDB 宣布已收购数据库托管公司 mLab
  9. DataGrip 上手体验,真香!
  10. WMS仓库仓储管理系统源码
  11. [ffmpeg][goav][issues] goav Dictionary crash double free
  12. 成长与发展---怎么给博士军团当好“博导”?(PL)
  13. Linux——(渗透理解)文件系统与日志分析
  14. 计算机休眠后无法唤醒出现蓝屏,笔记本电脑进入睡眠,唤醒后出现蓝屏怎么回事?...
  15. linux系统中mywho命令,linux查看在线用户 who命令参数及用法
  16. 怎么免卸载升级太极中的软件
  17. Cesium源码解读系列(一):GeoJsonDataSource如何处理geojson格式的数据
  18. c语言 最小公倍数与最大公因数
  19. 大数据培训有前途吗,大数据工资一般多少?
  20. 航模遥控继电器单通道控制2路继电器开关实现原理解析

热门文章

  1. 算法 Tricks(二) —— 大数的处理
  2. 数据结构(C++)—— 向量(Vector)
  3. 机器学习、深度学习教程和代码资源帖
  4. 机器学习基础(三十二) —— 使用 Apriori 算法进行关联分析
  5. 协方差矩阵(covariance matrix)
  6. php的两种会话技术是,php会话技术主要包含哪些
  7. java 创建类带泛型_java-创建泛型类列表
  8. 自动生成宏程序软件_圆周等分孔钻孔宏程序计算器
  9. 怎么设置电脑屏幕一直亮着_电脑屏幕分辨率的调节方法
  10. python语言的主网址-python官方网站