20191117 四川大学新生赛划水总结 --__- ...
文章目录
- 反思总结
- A
- B
- C
- E
- F
- K
- L
题目连接
反思总结
真的是太菜了 --__-
A
一看超大数据, 绝逼是找规律
手写出前十个数, 会发现 奇奇偶 …
模3输出…
细节决定成败, 水题上加罚时血亏, A题输出带", 平时做题基本没有遇到过", 走进了思维盲区, 1wa … 就输出一个双引号, 就可以避免20分钟的罚时 …
B
B题, 最长公共子串, 一看题目就开始上模板了, 但是这个和模板不太一样, 需要这个子串还是第二个字符串开头, 于是各种改, 各种wa … 后来仔细想想, 如果是那复杂的板子, 会有人在十几分钟a了? … 于是开始暴力, 思维不缜密wa一次 … 最后终于是暴力找过了
比赛结束以后, 突然想起来, 用 c++ string 成员函数 substr 枚举 第一个字符串的长度不就几行代码搞定??? 马上手写一遍, 接着过了 … 这说明比赛的时候还是要冷静思考, 多思考, 思考明白了再动手
#include<bits/stdc++.h>
using namespace std;int main ( ) {string s1, s2;while ( cin >> s1 >> s2 ) {int len1 = s1.size(),len2 = s2.size();string tmp_s1 = "";string tmp_s2 = "";bool ans = false;for ( int len = len1; len > 0; --len ) {tmp_s1 = s1.substr( len1-len, len );tmp_s2 = s2.substr( 0, len);if ( tmp_s1 == tmp_s2 ) {ans = true;break;}}cout << ( ans ? tmp_s1 : "\"NULL!\"" ) << endl;}return 0;
}
C
C 题, 并不难, 就是统计个数罢了, 看明白题意, 理解了是很好做的
#include<bits/stdc++.h>
using namespace std;int sum[4][10];
map<char,int> mp;int main ( ) {mp['T'] = 0;mp['S'] = 1;mp['W'] = 2; int T;char noKind;while ( cin >> T ) {cin >> noKind;while ( T-- ) {memset ( sum, 0, sizeof ( sum ) );char num, kind;for ( int i = 0; i < 14; ++i ) {cin >> num >> kind;if ( kind != noKind ) sum[mp[kind]][num-'0']++;}int cnt_2 = 0, cnt_3 = 0;for ( int i = 0; i < 3; ++i ) {for ( int j = 0; j < 10; ++j ) {if ( sum[i][j]==2 ) cnt_2++;else if ( sum[i][j]==3 ) {cnt_3++;}}}cout << ( cnt_2==7 || (cnt_2==1&&cnt_3==4) ? "Yes" : "No" ) << endl;}}return 0;
}
E
欧拉筛板子, 难点不是欧拉筛, 而是取模的技巧
如果按题意直接阶乘累加, 会超时,
我们这样来看, 某个数字的阶乘 一定 是这个数字以及之前数字的 倍数 ( 因数分解, 都懂 … )
那么, 假设 n = 1e6; p = 10;
那么, 从第十项开始, 一直到 1e6 每个数的阶乘取模全都是 0, 这样在这一范围内浪费大量时间
于是, 枚举 n 的时候, 只需要枚举到 p, 一旦这个数比 p 还大, 直接 break; 后面全是0, 加和不加有区别嘛
太巧妙了… 反正我是超时了 --_–
#include <bits/stdc++.h>
using namespace std;
#define rg register
#define sc scanf
#define pf printf
typedef long long ll; const int MAXN = 1e7+10;
bool isp[MAXN]; int su[MAXN]; // su 比 MAXN 小一个数量级合适
void Euler ( int MAXN ) { register int tot = 0;memset( isp, true, sizeof(isp) ), isp[0] = false, isp[1]= false;memset( su, 0, sizeof(su) );for ( register int i = 2; i <= MAXN; ++i ) { if ( isp[i] ) su[tot++] = i; for ( register int j = 0; j<tot&&i*su[j]<=MAXN; ++j ) { isp[i*su[j]] = false; if ( !(i%su[j]) ) break; }}
} int main ( ) { // freopen( "F:\\in\\.txt" , "r" , stdin ); int T,n, p;Euler( MAXN );sc( "%d", &T );while ( T-- ) { ll sum = 0,tmp = 1;sc( "%d%d", &n, &p );for ( int i = 1; i <= n; ++i ) {if ( i >= p ) break; // 精辟tmp = tmp*i%p;if ( isp[i] ) {sum = (sum+tmp)%p;}}pf( "%lld\n", sum );}return 0 ;
}
F
好一个标题党, 被题意给唬住了, 以为是ac自动机 …
这个大水题隐藏的可真够深的啊 !!!
从第一个字符串中找一个后缀, 永远满足字典序小于 第二个字符串
其实字符串比较大小和数字比较大小没啥区别, 从首位开始比较,
那么只需要遍历一遍第一个字符串, 找一个比第二个字符串小的的字符
这个字符到第一个字符串结尾, 即为第一个字符串的后缀
#include <bits/stdc++.h>
using namespace std;int main ( ) {int T;scanf ( "%d", &T );while ( T-- ) {string ss, st;cin >> ss >> st;bool ans = false;for ( int i = 0; ss[i] != '\0'; ++i ) {if ( ss[i] < st[0] ) {ans = true;break;}}cout << ( ans ? "YE5" : "N0" ) << endl;}return 0;
K
能化成 2n-1 格式的数是梅森数, 这个数又是素数, 那就是梅森素数, 输出前五个梅森素数…
暴力枚举打表, 记下来, 交代码输出… 这明目张胆的打表 … --_–
L
规律非常重要,
只要发现, 无论电梯怎么安排, 只要外围构成一个环, 那么想到哪儿就可以到哪儿…
于是乎, 两种情况, 顺时针, 逆时针, 两行代码结束 …
if ( sn[0]=='0' && sn[len1-1]=='1' && sm[0]=='0' && sm[len2-1]=='1' ) ans = true;
if ( sn[0]=='1' && sn[len1-1]=='0' && sm[0]=='1' && sm[len2-1]=='0' ) ans = true;
或者仔细看看上下左右01的规律, 一行即可
if ( sn[0]==sm[0] && sn[len1-1]==sm[len2-1] && sn[0]!=sn[len1-1] && sm[0]!=sm[len2-1] ) ans = true;
20191117 四川大学新生赛划水总结 --__- ...相关推荐
- [SWPUCTF 2021 新生赛] 第三波放题
[SWPUCTF 2021 新生赛]easyupload3.0 首先弄个报错出来,随便弄一下,比如弄出一个not found页面,发现是Apache/2.4.7 (Ubuntu) ,既然是 Apach ...
- 【补题日记】训练日记4:山东大学(SDU)acm新生赛
前 牛客 题目还是偏简单的 我是零零碎碎用上课时间写的 所以当时可能处理细节不太到位吧 才提交了很多遍 但其实思路都比较简单 就是部分题有坑点吧 中 A 签到题(出题人说的) #include< ...
- [SUCTF2018]babyre [ACTF新生赛2020]fungame
文章目录 [SUCTF2018]babyre 惯用思维 常人思维 GAMEOVER [ACTF新生赛2020]fungame int __cdecl sub_401340(int a1) int __ ...
- BUUCTF Web [ACTF2020 新生赛]Exec
「作者主页」:士别三日wyx 此文章已录入专栏<网络攻防>,持续更新热门靶场的通关教程 「未知攻,焉知收」,在一个个孤独的夜晚,你完成了几百个攻防实验,回过头来才发现,已经击败了百分之 ...
- BUUCTF Web [ACTF2020 新生赛]Include
「作者主页」:士别三日wyx 此文章已录入专栏<网络攻防>,持续更新热门靶场的通关教程 「未知攻,焉知收」,在一个个孤独的夜晚,你完成了几百个攻防实验,回过头来才发现,已经击败了百分之 ...
- 小乐乐与二段数(2019哈理工新生赛第20题)
链接:2019哈理工新生赛题解 2019哈理工新生赛第20题 T题: 链接:https://ac.nowcoder.com/acm/contest/1877/T 来源:牛客网 题目描述 小乐乐从老师口 ...
- 2019年安徽大学ACM/ICPC实验室新生赛题解
本文仅作个人收藏学习使用 题目及解析来源牛客竞赛网 //作者:王清楚 //链接:https://ac.nowcoder.com/discuss/351408?type=101&order=0& ...
- CTF新生赛之Writeup
CTF新生赛之Writeup 作为零基础的新生,也是在开学后才了解了CTF,感觉本次新生赛中颇有收获,也是应赛制要求,故写下这份WP,以纪念本人的第一次CTF竞赛. 回顾和感想 回顾本次的新生赛,难度 ...
- XUPT 新生赛题目总结
XUPT 新生赛题目总结 题目 永远的王聪明王 菊花侠大战桃花怪 教官喊话 Time Management 小布特烦恼 菜学长的糖糖 水题 永远的王聪明王 简单的结构体排序,唯一要注意的是数据范围(时 ...
- 论如何举办一个承载400人的比赛(XUPT新生赛承办小记)
XUPT新生赛承办小记 老师去年就想搞一个新生赛了,奈何去年时间不够,没有搞,于是今年就开始提前搞起来了.ZLS说要不然搞一个domjudge,我寻思着好鸭好鸭,看起来很牛逼,然后就开始了苦逼的配环境 ...
最新文章
- 会计记忆总结之九:会计档案
- Linux CentOS 6.x 关闭图形化界面的方法
- web公选课第三节2020.5.18
- 你是如何坚持读完《算法导论》这本书的?(帖子收集)
- SpringBoot不支持webapp的解决办法
- java获取网络图片_有了这50套Java毕设项目(源码 案例),offer拿到手软,无偿分享...
- hdu 2037(今年暑假不AC)
- mysql 2018最新补丁_mysql 基础一,续 2018-10-23
- 查看 java heapspace_Java heap space 问题查找
- hdu,2050,折线分割平面
- Cocos Creator 虚拟摇杆
- Firefox上IETab插件造成的一个问题
- 现代数字图像处理技术提高及应用案例详解
- navicat can not load oci dll,193,126
- vlookup使用步骤_VLOOKUP函数的使用方法详解
- 仿百思不得其姐项目开发(粗略笔记,后期规范排版和更新)
- 网络安全工程师,念念不忘,必有回响
- DXP多引脚封装绘制方式
- 城市巡游赛(树和图)
- Vue全家桶之webpack详解(四)