
ccf-csp
radish_chu
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
CCF 201312-5 I’m stuck C++
图论要求找到满足下述情况的点1、起点能到达此点2、此点不能到达终点思路即模拟BFS搜索过程,先从起点开始进行BFS搜索,再从终点开始搜索能到达的点reach标记为truevoid bfs1(x,y){ 指明行走时x、y坐标的变化情况: ST+ 四方向都能走,上(-1,0)左(0,-1) - 左右方向 (0,-1)(0,1) | 上下方向 (-1,0)(1,0) . 向下 (1,0) # 不做变化 行走后坐标为(x+dir[i],y+dir[i+1]) 要求新坐标在[0,n-1]原创 2020-09-07 20:24:34 · 256 阅读 · 0 评论 -
CCF文本处理c++:1509-3模版生成 1703-3MK70分[日后看] 1409-3 字符串匹配
1、getchar getline cingetchar 逐个读取缓冲区内的字符getline(cin, s) 读取输入流的一行字符(包含空格),并存入scin遇到空格停止cin和getchar不读入字符后的换行符,会将其存入缓冲区,若cin/getchar后直接跟getline就会出问题,即getline首先读到的是换行符而非预期字符因此在cin和getline之间可以使用getchar过滤回车2、find rfindfind和rfind都能用来寻找特定字符,并返回其位置(从0开始)fin原创 2020-08-27 23:50:57 · 188 阅读 · 0 评论 -
需要看第二遍:1509-2日期计算(闰年、日期的计算)、201512-2消除类游戏、1312-3最大矩形
一、日期计算1、闰年的计算(平2月28,闰2月29)if(y%4000||(y%40&&y%100!=0)) 为闰年2、日期的存储存储在1~12的数组中,为闰年时month[2]+=13、循环内逐个减去month[i]至d小于等于0,即int I=1;while(d>0){ d-=month[I]; ++I;}则I-1为当前月份,d+month[I-1]为当前月的第几天#include <iostream>using namespace std;原创 2020-08-20 21:27:56 · 200 阅读 · 0 评论 -
CCF-CSP认证 201503-2 数字排序 c++满分
#include <iostream>#include <algorithm>using namespace std;int a[1010],b[1010]={0};int main(){ int n,index; cin>>n; for(int i=0;i<n;++i) cin>>a[i]; sort(a,a+n); for(int i=0;i<n;++i){ ind原创 2020-08-20 15:46:12 · 219 阅读 · 0 评论 -
ccf-csp认证 201412-2 z字型扫描 c++
通过观察很容易发现,把图片顺时针旋转45度,扫描规则就变成了奇数层由左向右、偶数层由右向左(层数0~2*n-2)即for(int level=0;level<2*n-1;++level){ if(level%2!=0) 从右往左输出 else 从左往右输出{满分代码:#include <iostream>using namespace std;int a[505][505];int main(){ int n; cin>>n; f原创 2020-08-20 11:16:05 · 268 阅读 · 0 评论 -
CCF-CSP认证 201409-2画图 c++满分
使用初始值为0的二维数组作为画布,填充颜色=向相应数组添加元素1,二维数组中1的个数=色块总数p.s. 坐标系与二维数组的不同之处在于y,因此在存储数组元素时y要倒着存储即for(int i=x1;i<x2;++i){for(int j=y2-1;j>=y1;–j){…}}#include <iostream>using namespace std;int main(){ int n,count=0; int a[105][105]={0};原创 2020-08-19 23:03:01 · 224 阅读 · 0 评论 -
CCF-CSP认证 201403-2窗口 c++满分
思路:1、定义结构体存储x、y坐标及窗口序号2、遍历各窗口的x、y坐标,只要在窗口范围内就将flag标记为true;index储存被点击到的窗口的最大下标,最大保证了点击到的是最顶层的窗口3、若flag为true,说明存在有效点击,将下标为index的数组移到所有数组尾部、其后数组往前移动一格,并输出下标为index的数组的窗口序列;若flag为false,说明为无效点击,忽略此次操作进入下一轮循环#include <iostream>using namespace std;stru原创 2020-08-19 22:22:13 · 398 阅读 · 0 评论 -
CCF-CSP认证 ISBN号码
易错点:1、string转int int转string2、10与X陷阱1、int+'0’得到string, string-'0’得到intstring[x]得到字符串中的第x位字符2、10用X表示,当mod11=10时,应该判断最末一位是否为X、替换时也应该替换为X而不是10#include <iostream>#include <string>using namespace std;int main(){ string a; cin>>原创 2020-08-17 11:03:39 · 251 阅读 · 0 评论 -
CCF-CSP认证 线性分类器(含爆内存风险!!)
#include <iostream>using namespace std;struct Point{ int x; int y;};const int N=1e3;Point a[N];Point b[N];int main(){ int n,m,x1,y1,f=0,g=0;//f、g为两类点的数量 char t; cin>>n>>m; for(int k=0;k<n;++k){ ci原创 2020-08-15 23:35:42 · 309 阅读 · 0 评论 -
CCF-CSP 201812-1 小明上学&小明放学c++(重点!爆内存风险)
小明上学#include <iostream>using namespace std;int main(){ int r,y,g,time=0; cin>>r>>y>>g; int n; cin>>n; int a[n][2]; for(int i=0;i<n;++i){ for(int j=0;j<2;++j) cin>>a[i]原创 2020-08-13 16:37:49 · 371 阅读 · 0 评论 -
CCF-CSP 201803-1跳一跳c++
首先将题意搞懂1、输入为1:本轮得分为12、输入为2:判断上一轮得分情况1)得分为1,则本轮得分为22)得分为2,则本轮得分为(上轮得分+2)3)开局,则本轮得分为2可以用score数组存储每轮得分,最终得分为所有轮次之和满分c++代码:#include <bits/stdc++.h>#include <iostream>using namespace std;int a[30],score[30];int main(){ for(int i=0;i&原创 2020-08-12 17:30:02 · 407 阅读 · 0 评论 -
CCF-CSP 第一题一遍过(打酱油 最小差值 卖菜)c++
2017-9-1 打酱油买三送一、买五送二对比相当于买15送5、买15送6,先考虑买五瓶更实惠#include <iostream>#include <cmath>using namespace std;int main(){ int n; cin>>n; cout<<n/50*7+n%50/30*4+n%50%30/10*1; return 0;}201712-1 最小差值#include <iostr原创 2020-08-12 17:21:36 · 183 阅读 · 0 评论 -
CCF-CSP 201703-1分蛋糕 c++满分
两种分得蛋糕的情况1、蛋糕总重大于等于k2、蛋糕总重未达到k,但除此之外已经没有多余的蛋糕可供分配了(即遍历到数列尾部了)#include <iostream>#include <cmath>using namespace std;int main(){ int n,k=1,sum=0,count=0; cin>>n>>k; int a[n]; for(int i=0;i<n;++i) cin原创 2020-08-12 12:39:00 · 306 阅读 · 0 评论 -
CCF-CSP计算机认证 201612-1中间数 c++满分代码
注意:1、当有中间数时输出中间数,没有则输出-12、n=1的边界问题(n=1时中间数即为输入的数本身)3、一组数列不可能存在不同的中间数!!!(因此找到中间数后就可以return 0结束程序了,不需要继续遍历)#include <iostream>#include <cmath>using namespace std;int main(){ int n,max=0,min=0; cin>>n; int a[n]; for(i原创 2020-08-12 12:18:48 · 232 阅读 · 0 评论 -
CCF-CSP 201509-1数列分段c++满分代码
#include <iostream>using namespace std;int main(){ int n,flag=0,count=0,count2=0; cin>>n; int a[n]; for(int i=0;i<n;++i) cin>>a[i]; for(int i=0;i<n-1;++i){ if(a[i]==a[i+1]){ ++count;原创 2020-08-11 17:43:45 · 217 阅读 · 0 评论 -
CCF-CSP 201503-1矩阵旋转 c++满分代码——解决运行错误的问题
要求:1、实现矩阵逆时针旋转2、按照规定格式输出#include <iostream>using namespace std;int main(){ int m,n,c=0; cin>>m>>n; int a[m][n],b[n][m]; for(int i=0;i<m;++i){ for(int j=0;j<n;++j) cin>>a[i][j]; }原创 2020-08-11 12:06:55 · 455 阅读 · 0 评论 -
CCF-CSP 201412-1门禁系统 c++满分代码
#include <iostream>#include <algorithm>using namespace std;int main(){ int n; cin>>n; int a[n],b[n]; for(int i=0;i<n;++i){ cin>>a[i]; b[i]=1;//默认每个数出现一次 } for(int i=0;i<n-1;++i){原创 2020-08-11 10:50:36 · 377 阅读 · 0 评论 -
CCF-CSP计算机认证 第一题水题201409-1 相邻数对 c++满分代码
100分代码:#include <iostream>using namespace std;int main(){ int n,count=0; cin>>n; int a[n]; for(int i=0;i<n;++i){ cin>>a[i]; } sort(a,a+n); for(int i=0;i<n-1;++i){ if(a[i+1]-a[i]==1)原创 2020-08-11 10:03:47 · 151 阅读 · 0 评论 -
CCF-CSP计算机认证 第一题水题-201403-1相反数 c++满分代码
100分代码:#include <iostream>#include <algorithm>using namespace std;int main(){ int n,count=0,index=0; cin>>n; int a[n]; for(int i=0;i<n;++i){ cin>>a[i]; } sort(a,a+n);//升序排列 for(int i=0;i<原创 2020-08-11 00:15:24 · 262 阅读 · 0 评论 -
CCF-CSP计算机认证 第一题水题-201312-1出现次数最多的数 c++满分代码
易错点:1、重复计数2、数组大小问题100分代码:#include <iostream>#include <algorithm>using namespace std;int main(){ int n; cin>>n; int a[n]; for(int i=0;i<n;++i){ cin>>a[i]; } sort(a,a+n);//由小到大排序 int b[a[n原创 2020-08-09 18:38:58 · 312 阅读 · 0 评论 -
ccf-csp计算机认证 第一题水题-小中大 c++满分代码(取整函数)
要求:1、求最值及中位数2、中位数按四舍五入保留一位小数3、结果降序输出需要注意的是,若数据为整数则以整数形式输出 否则四舍五入保留一位小数。四舍五入保留n位小数的方法如下:double类型的数据a 保留bit位小数double result(double a,int bit){ double integer=floor(a);//取a的整数部分 a-=integer; for(int i=0;i<bit;++i) a*=10; a=flo原创 2020-08-09 16:58:25 · 269 阅读 · 0 评论 -
CCF-CSP认证 第一题水题-小明摘苹果(c++满分代码)
80分代码:int main(){ int N,M,sum=0; cin>>N; cin>>M; int a[N][M+1]; int b[N]; for(int i=0;i<N;++i){ b[i]=0; for(int j=0;j<M+1;++j){ cin>>a[i][j]; sum+=a[i][j]; }.原创 2020-08-08 18:16:49 · 946 阅读 · 0 评论