一、前情提要

在经过三天的摸鱼 学习写bug队列、优先队列和素数筛相关内容之后,参加集训的同学们终于迎来了第二场考试,在这场考试中,我会有哪些脑残操作进步呢?

总结:

1.用scanf多组输入再一次忘记’~'符号(cin/cout真香) ——OLE
2.输出格式不注意,最后一个数据只换行不空格的要求没有注意 ——PE
3.写代码不能懒手脚,不然可能在细节上面出问题 ——WA
4.根据题目数据量与数据大小,如果有加/乘运算的话需要推断是不是long long才装的下 ——WA
5.当你在林大OJ上做题提交后发现RE,但是你又觉得自己代码没问题的话,你就要看是不是用了自爆装置ios::sync_with_stdio(false) 取消同步了,这玩意在林大OJ上玄学出问题 ——RE
6.当你发现有的题是找对应关系输出答案的而且只是TLE的话……那么你完全可以试一下打表啊哈哈哈 ——⭐AC⭐

二、习题&题解(共七题)

格式:题号-题名-AC/Submit

A 机器人 [60/146]

这题比较简单

#include <bits/stdc++.h>
using namespace std;
struct xxx //存x以及对应翻转后的值
{int x, x2;
} xx;
bool operator<(const xxx &a, const xxx &b)
{if (a.x2 != b.x2)return a.x2 > b.x2;elsereturn a.x > b.x;
}
priority_queue<xxx, vector<xxx>, less<xxx>> s;
int get_x(int t) //翻转操作
{int k = 0, s = t, m = 1, g, h = 0;while (s){s = s / 10;k++;}while (k){for (int i = 1; i < k; i++)m = m * 10;k--;g = (t % 10) * m;t = t / 10;m = 1;h = h + g;}return h;
}
int main()
{int n, x, tt;while (~scanf("%d", &n)) //注意scanf的多组输入!!{for (int i = 1; i <= n; i++){scanf("%d", &x);tt = get_x(x);s.push({x, tt});}for (int i = 1; i <= n; i++){if (i < n)printf("%d ", s.top().x);elseprintf("%d\n", s.top().x);s.pop();}}//system("pause");return 0;
}

B 纸牌游戏 [68/165]

这个挺简单的

#include <bits/stdc++.h>
using namespace std;
queue<int> s;int main()
{int n, x;cin >> n;while (n--){cin >> x;if (x == 1){cout << x << endl;continue;}for (int i = 1; i <= x; i++)s.push(i);while (s.size() != 1){if (s.size() > 2)cout << s.front() << ",";if (s.size() == 2)cout << s.front() << endl;s.pop();s.push(s.front());s.pop();}cout << s.front() << endl;s.pop();}//system("pause");return 0;
}

C 咸鱼连突刺 [37/289]

啊啊啊这题气死我了!!
以为mark[0]默认=0就想着偷下懒没再赋0,忘记经过memset都成1了,然后一直WA,疯狂检查一个多小时主函数不知道错在哪直到时间结束。
偷懒两秒钟,卡题一小时。

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 1e6;
bool mark[N + 1];
int prime[N + 1];
int t, l, r;
ll ans;
void get_prime()
{int cnt = 0;memset(mark, 1, sizeof(mark));mark[0]=mark[1] = 0;//就是这里!!考试的时候只写了mark[1]=0!!!for (int i = 1; i <= N; i++){if (mark[i])prime[++cnt] = i;for (int j = 1; j <= cnt; j++){if (i * prime[j] > N)break;mark[i * prime[j]] = 0;if (i % prime[j] == 0)break;}}
}
int main()
{scanf("%d", &t);get_prime();while (t--){ll la = 0, ra = 0;scanf("%d %d", &l, &r);for (int i = l; i <= r; i++){if (mark[i]){la = i;break;}}for (int i = r; i >= l; i--){if (mark[i]){ra = i;break;}}ll ttt = la + ra;ans += ttt;}printf("%lld\n", ans);//system("pause");return 0;
}

D 库特的合并果子 [58/313]

在林大OJ上我都不敢用ios::sync_with_stdio(false)了,简直就是自爆指令,随机RE竟恐怖如斯。
数据量大还是老老实实scanf、printf吧。
这题交了三次一是没注意格式,二是没仔细推断数据类型(“第一行是一个整数 n(2≤n≤200000) ,表示果子的种类数。第二行包含 n 个整数,用空格分隔,第 i 个整数 ai(1≤ai ≤1000000) 是第 i 种果子的数目。”这一推就是要用long long才能装的下啊喂(#`O′)

#include <bits/stdc++.h>
using namespace std;
long long n, t, cnt;
priority_queue<long long, vector<long long>, greater<long long> > s;
int main()
{while (~scanf("%lld", &n)){for (int i = 1; i <= n; i++){scanf("%lld", &t);s.push(t);}int pos = 1;while (s.size() != 1){cnt = s.top();s.pop();cnt += s.top();s.pop();if (pos < n - 1)printf("%lld ", cnt);if (pos == n - 1)printf("%lld\n", cnt);s.push(cnt);pos++;}s.pop();}//system("pause");return 0;
}

E 库特的素数队列(1) [32/125]

F 库特的素数队列(2) [17/76]

这两题好玩哈哈哈哈,题解是一样的,不是我说,表一打好数据量再翻几倍也没关系啊

#include <bits/stdc++.h>
using namespace std;int main()
{int t, x;int str[20] = {2, 3, 5, 11, 31, 127, 709, 5381, 52711, 648391, 9737333};cin >> t;while (t--){cin >> x;if (x == 1)cout << "1" << endl;if (x == 2)cout << "2" << endl;if (x >= 3 && x <= 4)cout << "3" << endl;if (x >= 5 && x <= 10)cout << "5" << endl;if (x >= 11 && x <= 30)cout << "11" << endl;if (x >= 31 && x <= 126)cout << "31" << endl;if (x >= 127 && x <= 708)cout << "127" << endl;if (x >= 709 && x <= 5380)cout << "709" << endl;if (x >= 5381 && x <= 52710)cout << "5381" << endl;if (x >= 52711 && x <= 648390)cout << "52711" << endl;if (x >= 648391 && x <= 9737332)cout << "648391" << endl;if (x >= 9737333)cout << "9737333" << endl;}//system("pause");return 0;
}

附上打表代码初版(需要稍微改动才能打,不过改的代码我没保存~~)

#include <bits/stdc++.h>
using namespace std;
const int N = 1e7;
int prime[N + 1], num[N + 1], str[1000001];//num用来记录从1到n之间的素数个数,str是用来存数的数组
bool mark[N + 1];
void screen()
{int cnt = 0;memset(mark, 1, sizeof(mark));mark[0] = mark[1] = 0;num[1] = 0;for (int i = 2; i <= N; i++){if (mark[i])prime[++cnt] = i;for (int j = 1; j <= cnt; j++){if (i * prime[j] > N)break;mark[i * prime[j]] = 0;if (i % prime[j] == 0)break;}num[i] = cnt; //记录}
}
int main()
{int t, n;screen();scanf("%d", &t);while (t--){scanf("%d", &n);for (int i = 1; i <= num[n]; i++) //根据num的记录直接找出素数存入strstr[i] = prime[i];int pos = num[n]; while (pos != 1) //循环记录素数,用pos计数{int poss = pos;pos = 0;for (int i = 1; i <= poss; i++){if (mark[i]){str[++pos] = str[i];}}}printf("%d\n", str[1]);}//system("pause");return 0;
}

G 库特的绳子 [7/57]

被C卡了时间以致于没写到这,现在累了想追剧了,先鸽了吧§( ̄▽ ̄

大一寒假训练:集训内容考试(二)【未完待续】相关推荐

  1. 语义分割FCN网络训练自己的数据集_未完待续

    下载PASCAL VOC2012数据集 wget https://pjreddie.com/media/files/VOCtrainval_11-May-2012.tar 参考文献: https:// ...

  2. NEFU 大一寒假训练十二(set)2020.02.18

    Summary 可能是昨天的题少了一些,今天的题多了一堆,还疯狂TLE /(ㄒoㄒ)\~~ Information No. Title AC/Submit A 明明的随机数-set 60/101 B ...

  3. 实现2020年TI杯大学生电子设计竞赛F题简易无接触温度测量、身份识别与口罩检测装置(未完待续)

    声明 本文仅在CSDN发布,其他均为盗版.请支持正版! 正版链接: https://blog.csdn.net/meenr/article/details/109298042 本文目录 *实现2020 ...

  4. 省钱版----查找 IoT 设备TTL线序__未完待续

    作者:仙果 原文来自:省钱版--查找 IoT 设备TTL线序 省钱版----查找 IoT 设备TTL线序__未完待续 缘由 在IoT固件调试分析的过程中,建议首先在IoT设备的板子上焊接调试线,这是能 ...

  5. Diabetes 糖尿病及其并发症.|2021/1/25(未完待续)

    目录 前言: 正文: ①宏观严重性: ②普遍状况:" 三多一少": ③定义 : ③胰岛素(Insulin,一种激素(harmone)) ④引出糖尿病病理: 1> 1-型糖尿病 ...

  6. python线程和进程-未完待续

    python线程和进程-未完待续 环境变量 0. 概念 1. 并行/并发 并行 并发 并行与并发的关系 2.进程/线程 基本概念 线程 多线程 队列 互斥锁/线程共享 阻塞 锁 条件锁 进程 多进程 ...

  7. 英语48个常见语法点(未完待续)

    话说,英语不好的程序永远都是三流的程序员.不知道这句话是否真的正确.但是最近突然觉得每天和api打交道很没意思或者说有点悲哀吧(也许这就是大部分苦逼的程序员苦逼的地方吧),付出那么多时间只为了学习.了 ...

  8. 二叉树学习笔记(未完待续)

    摘要 二叉树学习笔记(未完待续). 博客 IT老兵驿站. 前言 昨天(2019-11-07)复习红黑树,发现红黑树和二叉树密不可分,所以这里再复习一下二叉树. 在大学的时候,这块我很认真地学习了一遍. ...

  9. php编码规范(未完待续)

    php编码规范(未完待续) php编码规范(未完待续) 标准化的重要性和好处 程序员可以了解任何代码,弄清程序的状况 新人可以很快的适应环境 防止新接触PHP的人出于节省时间的需要,自创一套风格并养成 ...

  10. 刚子扯谈:未完待续的微信5.0

    「未完待续的微信」 无独有偶,很多思想上的爆发往往就是一瞬间,我是有特别感觉的!感觉其实更多的像是思想涌泉,而涌泉不会持续太久!影响感觉器官的有万万千,可以是一个动作.一个眼色.哪怕是眨眨眼眉,我们的 ...

最新文章

  1. 幼儿园带括号算式口诀_这么全的小学数学速算技巧、口诀不多见,教给孩子挺不错!...
  2. .sync的一个用法
  3. python列表代码_8种高级的Python列表使用技巧,都给你整理好啦(附实操代码)...
  4. i 智慧 | 深度广度并举,AWS容器服务再推利器!
  5. SpringCloud学习之路(一)-简单Demo
  6. [转载] 多元线性回归 及其Python实现
  7. ubuntu linux 搭建ftp虚拟目录
  8. [转]Windows 7自带很好用的磁盘检查与修复的环境
  9. past软件_Past软件与AndersonDarling正态性检验
  10. mysql中部门表和员工表_数据库 员工表和部门表
  11. 5G无线关键技术 — 高频段信号传输技术
  12. 使用内核模块添加系统调用
  13. 基于autojs7的皮皮虾极速版辅助
  14. invoke调用成员方法(无参和有参):
  15. 关于『数据结构』:图论
  16. 使用2019.2 Terrain Tools更新来加速Terrain Material绘画
  17. 多功能时钟电路的设计框图_详解通用串行总线USB,工作原理、接口电路设计
  18. 部署cirros_vm2 和second_local_net - 每天5分钟玩转 OpenStack(131
  19. 浅谈《英雄杀》5人局之反贼技巧
  20. read函数---------详解

热门文章

  1. KNN和K-Means
  2. 优酷土豆联姻 视频网站格局的几大猜想
  3. 【5G RRC】5G系统消息介绍
  4. VBS调用ping检测ip连通情况
  5. zjs-my-diary-20200609
  6. 关于固态硬盘闪存芯片研究资料收集
  7. 使用Ionic.Zip压缩、分卷压缩、解压文件
  8. 亓官劼的2020年度总结
  9. 淘宝-没素质的商家给消费者加入禁购名单
  10. Apache Thrift 介绍