第十八次CSP认证总结
我的第一次CSP认证,期望考到200分。
题目一年比一年难…之前往年的题目也就做了前两题,没有认真研究后面三个题,太浮躁了。
2019-12-15 青岛大学
前两个水题切了一个小时,之前的最多40分钟,把题目理解清楚就ok了。
第三题判断化学方程式是否配平(包括系数、化学元素(大小写)、括号、嵌套括号),读题的时候想的太少,没考虑清楚,导致最后写了2个半小时才发现没想全…再给我1小时差不多可以过6组样例的,下次再做大模拟的想明白了再下手,在纸上要写明白,要不写的时候容易掉了条件,我太难了…
第四题区块链,没看懂,过后补题,没做。
第五题,区间操作,暴力做的,longlong开的无符号整型。
2019-12-17
出分了 … 240 (前7.1%),差不多跟预想的一样
1:100
2:100
3:30
4:0
5:10
明年3月份继续吧,这次做题有点浮躁,沉不下心来,还是菜啊…
考一次有点贵,400块钱(包括路费)…学校好像对这个不重视,没法报销。
附上比赛的代码:
1.报数(100分)
#include<iostream>
#include<cstring>
#include<cmath>
#include<algorithm>
typedef long long ll;
const int maxn=1e6+10;
using namespace std;
ll a[maxn];
ll judge(int n)
{if(n%7==0)return 1;ll num=log10(n)+1;ll ans=n;for(int i=1;i<=num;i++){if(ans%10==7)return 1;ans/=10;}return 0;
}
void init()
{ll k=1;for(int i=1;i<=10000;i++){if(judge(i)==0)a[k++]=i;}
}
int main()
{ll n;ll a1=0,a2=0,a3=0,a4=0;cin>>n;init();ll num=a[n];for(int i=1;i<=num;i+=4)//1{if(judge(i)==1)a1++;} for(int i=2;i<=num;i+=4)//2{if(judge(i)==1)a2++;} for(int i=3;i<=num;i+=4)//3{if(judge(i)==1)a3++;} for(int i=4;i<=num;i+=4)//4{if(judge(i)==1)a4++;} cout<<a1<<endl<<a2<<endl<<a3<<endl<<a4<<endl;return 0;
}
2.回收站选址 (100分)
#include<iostream>
#include<cstring>
#include<cmath>
#include<algorithm>
typedef long long ll;
const int maxn=1e6+10;
using namespace std;
struct node{ll x,y;
}eg[maxn];
ll a[10];
int main()
{ll u,d,l,r,num;ll n;cin>>n;for(int i=1;i<=n;i++){cin>>eg[i].x>>eg[i].y;}for(int i=1;i<=n;i++){u=0,d=0,l=0,r=0;num=0;ll x=eg[i].x;ll y=eg[i].y;for(int j=1;j<=n;j++){if(eg[j].x==x&&eg[j].y==y+1)u=1;else if(eg[j].x==x&&eg[j].y==y-1)d=1;else if(eg[j].x==x-1&&eg[j].y==y)l=1;else if(eg[j].x==x+1&&eg[j].y==y)r=1;}if(u==1&&d==1&&l==1&&r==1){for(int j=1;j<=n;j++){if(eg[j].x==x-1&&eg[j].y==y+1)num++;else if(eg[j].x==x-1&&eg[j].y==y-1)num++;else if(eg[j].x==x+1&&eg[j].y==y+1)num++;else if(eg[j].x==x+1&&eg[j].y==y-1)num++; }a[num]++; }}for(int i=0;i<=4;i++){cout<<a[i]<<endl;}return 0;
}
3.化学方程式 (30分)
#include<iostream>
#include<cstring>
#include<cmath>
#include<algorithm>
typedef long long ll;
const int maxn=1e6+10;
using namespace std;
ll pre[1000],hre[1000];
ll s[1000],h[1000];
void init()
{for(int i=0;i<1000;i++){pre[i]=0;hre[i]=0;s[i]=0;h[i]=0;}
}
int main()
{ll n,k;cin>>n;string str;for(int i=1;i<=n;i++){init();ll flag=0;cin>>str;for(int j=0;j<str.length();j++){if(str[j]=='=')k=j; } //cout<<"k "<<endl;ll o1=0;for(int i=0;i<k;i++){if(str[i]=='+')s[o1++]=i;}// cout<<"o1 "<<o1<<endl;ll o2=0;for(int i=k+1;i<str.length();i++){if(str[i]=='+')h[o2++]=i;}ll qq;if(s[0]==0)qq=k;elseqq=s[0];ll f1=0;//第一部分 if(str[0]>='0'&&str[0]<='9')f1=1;if(f1){ll mm;ll num=str[0]-'0';for(int i=1;i<qq;i++){mm=1;if(str[i]>='0'&&str[i]<='9')continue;if(str[i+1]>='0'&&str[i+1]<='9'){mm=str[i+1]-'0';} pre[str[i]-'A']+=num*mm;}}else{ll mm;for(int i=0;i<qq;i++){mm=1;if(str[i]>='0'&&str[i]<='9')continue;if(str[i+1]>='0'&&str[i+1]<='9'){mm=str[i+1]-'0';//cout<<mm<<endl; } //cout<<str[i]<<endl;pre[str[i]-'A']+=mm;}}for(int i=0;i<o1-1;i++)//中间 {ll l=s[i]+1,r=s[i+1];ll f=0;if(str[l]>='0'&&str[l]<='9')f=1;if(f){ll mm;ll num=str[l]-'0';for(int i=l+1;i<r;i++){mm=1;if(str[i]>='0'&&str[i]<='9')continue;if(str[i+1]>='0'&&str[i+1]<='9'){mm=str[i+1]-'0';} pre[str[i]-'A']+=num*mm;}}else{ll mm;for(int i=l;i<r;i++){mm=1;if(str[i]>='0'&&str[i]<='9')continue;if(str[i+1]>='0'&&str[i+1]<='9'){mm=str[i+1]-'0';} pre[str[i]-'A']+=mm;}}}if(s[0]){f1=0;//后面 if(str[s[o1-1]+1]>='0'&&str[s[o1-1]+1]<='9')f1=1;if(f1){ll mm;ll num=str[s[o1-1]+1]-'0';for(int i=s[o1-1]+2;i<k;i++){mm=1;if(str[i]>='0'&&str[i]<='9')continue;if(str[i+1]>='0'&&str[i+1]<='9'){mm=str[i+1]-'0';} pre[str[i]-'A']+=num*mm;}}else{ll mm;for(int i=s[o1-1]+1;i<k;i++){mm=1;if(str[i]>='0'&&str[i]<='9')continue;if(str[i+1]>='0'&&str[i+1]<='9'){mm=str[i+1]-'0';} pre[str[i]-'A']+=mm;}} }//==HOUll pp;if(h[0]==0)pp=str.length();elsepp=h[0];f1=0;//第一部分 if(str[k+1]>='0'&&str[k+1]<='9')f1=1;if(f1){ll mm;ll num=str[k+1]-'0';for(int i=k+2;i<pp;i++){mm=1;if(str[i]>='0'&&str[i]<='9')continue;if(str[i+1]>='0'&&str[i+1]<='9'){mm=str[i+1]-'0';} hre[str[i]-'A']+=num*mm;}}else{ll mm;for(int i=k+1;i<pp;i++){mm=1;if(str[i]>='0'&&str[i]<='9')continue;if(str[i+1]>='0'&&str[i+1]<='9'){mm=str[i+1]-'0';} hre[str[i]-'A']+=mm;}}for(int i=0;i<o2-1;i++)//中间 {ll l=h[i]+1,r=h[i+1];ll f=0;if(str[l]>='0'&&str[l]<='9')f=1;if(f){ll mm;ll num=str[l]-'0';for(int i=l+1;i<r;i++){mm=1;if(str[i]>='0'&&str[i]<='9')continue;if(str[i+1]>='0'&&str[i+1]<='9'){mm=str[i+1]-'0';} hre[str[i]-'A']+=num*mm;}}else{ll mm;for(int i=l;i<r;i++){mm=1;if(str[i]>='0'&&str[i]<='9')continue;if(str[i+1]>='0'&&str[i+1]<='9'){mm=str[i+1]-'0';} hre[str[i]-'A']+=mm;}}}if(h[0]){f1=0;//后面 if(str[h[o2-1]+1]>='0'&&str[h[o2-1]+1]<='9')f1=1;if(f1){ll mm;ll num=str[h[o2-1]+1]-'0';for(int i=h[o2-1]+2;i<str.length();i++){mm=1;if(str[i]>='0'&&str[i]<='9')continue;if(str[i+1]>='0'&&str[i+1]<='9'){mm=str[i+1]-'0';} hre[str[i]-'A']+=num*mm;}}else{ll mm;for(int i=h[o2-1]+1;i<str.length();i++){mm=1;if(str[i]>='0'&&str[i]<='9')continue;if(str[i+1]>='0'&&str[i+1]<='9'){mm=str[i+1]-'0';} hre[str[i]-'A']+=mm;}}}for(int i=0;i<500;i++){if(pre[i]!=hre[i])flag=1;}if(flag)cout<<"N"<<endl;elsecout<<"Y"<<endl;} return 0;
}
5.魔数 (10分)
#include<iostream>
#include<cstring>
#include<cmath>
#include<algorithm>
typedef unsigned long long ll;
const int maxn=1e6+10;
using namespace std;
ll a[maxn];
ll u[10];
ll n;
const ll mod1=2009731336725594113;
const ll mod2=2019;
void init(ll n)
{for(int i=1;i<=n;i++){a[i]=i;}
}
int main()
{ll q;u[0]=314882150829468584;u[1]=427197303358170108;u[2]=1022292690726729920;u[3]=1698479428772363217;u[4]=2006101093849356424;cin>>n>>q;init(n);ll num;ll l,r,t;for(int i=1;i<=q;i++){num=0;cin>>l>>r;for(int j=l;j<=r;j++){num+=(a[j]%mod1)%mod2;}cout<<num<<endl;t=num%5;for(int j=l;j<=r;j++){a[j]=((a[j]%mod1*u[t]%mod1)%mod1)%mod2;}}return 0;
}
第十八次CSP认证总结相关推荐
- [ 2019-12-15第十八次CCF计算机软件能力认证]总结 Apare_xzc
[ 2019-12-15第十八次CCF计算机软件能力认证]总结 导言:今天第一次参加CCF考试,考完回来迫不及待地想要做一点笔记 链接:我做的CCF题目汇总Apare_xzc <– 比赛题目(凭 ...
- C1认证学习十八、十九(表单元素、转义字符)
C1认证学习十八.十九(表单元素.语义化标签) 十八 任务背景 HTML的表单用于收集用户的输入,表单元素是指的不同类型的input元素,复选框,单选按钮,提交按钮等等. 任务目标 掌握表单标签以及其 ...
- 第十四次CCF CSP认证心得
个人博客链接:https://www.lhbat.com 在这里强烈的鄙视了一下自己~~~~简直有些坐井观天,写的啥也不是,但想一想,或许还是能给刚入门的同学(像我一样的小小白)或还没有参加过CSP认 ...
- Spring Cloud之(十八)微服务网关GateWay
十八.微服务网关GateWay Zuul 1.x 是一个基于阻塞 IO 的 API Gateway 以及 Servlet:直到 2018 年 5 月,Zuul 2.x(基于Netty,也是非阻塞的,支 ...
- Linux运维 第三阶段 (十八) varnish
Linux运维 第三阶段 (十八) varnish 数据: 结构化数据,RDBMS: 非结构化数据,FS,存海量小文件,NAS.SAN.DFS可提供较好的性能: web cache: 程序具有局部性( ...
- 以CCF CSP认证为抓手,积极探索软件基础能力递进式培养体系
原文链接:以CCF CSP认证为抓手,积极探索软件基础能力递进式培养体系 发布单位:学会 发布时间:2017-01-20 16:16 作者:陆建峰 余立功 摘要:为提升计算机专业类学生 ...
- 第五十九章 CSP的常见问题 - 会话和许可证,为什么我要经常登录?
文章目录 第五十九章 CSP的常见问题 - 会话和许可证,为什么我要经常登录? 当我尝试加载`CSP`页面时,出现以下错误:错误`#5924`:出现错误,无法显示指定的错误页面-请通知网站管理员.这是 ...
- 信息系统项目管理师必背核心考点(六十八)数字证书、数字签名
科科过为您带来软考信息系统项目管理师核心重点考点(六十八)数字证书.数字签名和CA认证中心,内含思维导图+真题 [信息系统项目管理师核心考点]数字证书 1.具有不可抵赖性的特征(一段电子文档) 2.包 ...
- python3 scrapy框架,Python3爬虫(十八) Scrapy框架(二)
对Scrapy框架(一)的补充 Infi-chu: Scrapy优点: 提供了内置的 HTTP 缓存 ,以加速本地开发 . 提供了自动节流调节机制,而且具有遵守 robots.txt 的设置的能力. ...
最新文章
- LoadRunner之二“集合点”
- 大疆aeb连拍_前后双屏幕:大疆OSMO Action行动相机规格与谍照曝光
- java 禁用迅雷_Squid使用User Agent过滤禁止迅雷
- SGI STL 学习笔记二 vector
- JAVA入门级教学之(变量)
- vue - (引入jq)
- 【Hive】多字符分隔
- uniapp动态显示数组_【报Bug】uniapp 在小程序中 动态修改添加 数组 数据 ,点击获取的索引值错误...
- 2019118_四个化学数据分析(3)
- 16S多样性组成谱研究,9.13分的Water Research轻松二连发!
- C语言题目教室数量编程,北京理工大学网教室C语言编程题库及答案(绝对经典).doc...
- 匹配区县代码_全国区县代码1
- python pymysql模块下载_python开发11之PyMySQL模块
- unity中显示fps
- FMS视频在线采集系统
- 小程序中wx-if使用方法
- 如何升级win10.
- 华为鸿蒙智慧屏和手机,【荣耀智慧屏评测】鸿蒙初体验:荣耀智慧屏跨系统交互构建新生态(全文)_荣耀 智慧屏_手机评测-中关村在线...
- 513、Java Spring Cloud Alibaba -【Spring Cloud Alibaba Nacos】 2021.08.30
- 转:接班人都是“剩出来”的,选接班人9条必用原则
热门文章
- 重置数据this.$options.data()
- 什么是泛型?为什么需要泛型?杠精泛型
- (抽奖业务)实现奖池里奖品动态数量来计算概率
- Ngin服务器的相关配置
- 光环国际PMP—3分钟解读:什么是项目经理
- Frappe Chart ——折线图和饼状图
- 数据结构02 827. 双链表(DAY 38)
- .mat文件与.dat/.txt文件的相互转换
- Web前端单词大全(html+css+js+vue)
- 马德里商标注册注意事项