我的第一次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认证总结相关推荐

  1. [ 2019-12-15第十八次CCF计算机软件能力认证]总结 Apare_xzc

    [ 2019-12-15第十八次CCF计算机软件能力认证]总结 导言:今天第一次参加CCF考试,考完回来迫不及待地想要做一点笔记 链接:我做的CCF题目汇总Apare_xzc <– 比赛题目(凭 ...

  2. C1认证学习十八、十九(表单元素、转义字符)

    C1认证学习十八.十九(表单元素.语义化标签) 十八 任务背景 HTML的表单用于收集用户的输入,表单元素是指的不同类型的input元素,复选框,单选按钮,提交按钮等等. 任务目标 掌握表单标签以及其 ...

  3. 第十四次CCF CSP认证心得

    个人博客链接:https://www.lhbat.com 在这里强烈的鄙视了一下自己~~~~简直有些坐井观天,写的啥也不是,但想一想,或许还是能给刚入门的同学(像我一样的小小白)或还没有参加过CSP认 ...

  4. Spring Cloud之(十八)微服务网关GateWay

    十八.微服务网关GateWay Zuul 1.x 是一个基于阻塞 IO 的 API Gateway 以及 Servlet:直到 2018 年 5 月,Zuul 2.x(基于Netty,也是非阻塞的,支 ...

  5. Linux运维 第三阶段 (十八) varnish

    Linux运维 第三阶段 (十八) varnish 数据: 结构化数据,RDBMS: 非结构化数据,FS,存海量小文件,NAS.SAN.DFS可提供较好的性能: web cache: 程序具有局部性( ...

  6. 以CCF CSP认证为抓手,积极探索软件基础能力递进式培养体系

    原文链接:以CCF CSP认证为抓手,积极探索软件基础能力递进式培养体系 发布单位:学会      发布时间:2017-01-20 16:16 作者:陆建峰    余立功 摘要:为提升计算机专业类学生 ...

  7. 第五十九章 CSP的常见问题 - 会话和许可证,为什么我要经常登录?

    文章目录 第五十九章 CSP的常见问题 - 会话和许可证,为什么我要经常登录? 当我尝试加载`CSP`页面时,出现以下错误:错误`#5924`:出现错误,无法显示指定的错误页面-请通知网站管理员.这是 ...

  8. 信息系统项目管理师必背核心考点(六十八)数字证书、数字签名

    科科过为您带来软考信息系统项目管理师核心重点考点(六十八)数字证书.数字签名和CA认证中心,内含思维导图+真题 [信息系统项目管理师核心考点]数字证书 1.具有不可抵赖性的特征(一段电子文档) 2.包 ...

  9. python3 scrapy框架,Python3爬虫(十八) Scrapy框架(二)

    对Scrapy框架(一)的补充 Infi-chu: Scrapy优点: 提供了内置的 HTTP 缓存 ,以加速本地开发 . 提供了自动节流调节机制,而且具有遵守 robots.txt 的设置的能力. ...

最新文章

  1. LoadRunner之二“集合点”
  2. 大疆aeb连拍_前后双屏幕:大疆OSMO Action行动相机规格与谍照曝光
  3. java 禁用迅雷_Squid使用User Agent过滤禁止迅雷
  4. SGI STL 学习笔记二 vector
  5. JAVA入门级教学之(变量)
  6. vue - (引入jq)
  7. 【Hive】多字符分隔
  8. uniapp动态显示数组_【报Bug】uniapp 在小程序中 动态修改添加 数组 数据 ,点击获取的索引值错误...
  9. 2019118_四个化学数据分析(3)
  10. 16S多样性组成谱研究,9.13分的Water Research轻松二连发!
  11. C语言题目教室数量编程,北京理工大学网教室C语言编程题库及答案(绝对经典).doc...
  12. 匹配区县代码_全国区县代码1
  13. python pymysql模块下载_python开发11之PyMySQL模块
  14. unity中显示fps
  15. FMS视频在线采集系统
  16. 小程序中wx-if使用方法
  17. 如何升级win10.
  18. 华为鸿蒙智慧屏和手机,【荣耀智慧屏评测】鸿蒙初体验:荣耀智慧屏跨系统交互构建新生态(全文)_荣耀 智慧屏_手机评测-中关村在线...
  19. 513、Java Spring Cloud Alibaba -【Spring Cloud Alibaba Nacos】 2021.08.30
  20. 转:接班人都是“剩出来”的,选接班人9条必用原则

热门文章

  1. 重置数据this.$options.data()
  2. 什么是泛型?为什么需要泛型?杠精泛型
  3. (抽奖业务)实现奖池里奖品动态数量来计算概率
  4. Ngin服务器的相关配置
  5. 光环国际PMP—3分钟解读:什么是项目经理
  6. Frappe Chart ——折线图和饼状图
  7. 数据结构02 827. 双链表(DAY 38)
  8. .mat文件与.dat/.txt文件的相互转换
  9. Web前端单词大全(html+css+js+vue)
  10. 马德里商标注册注意事项