CCF CSP认证
文章平均质量分 75
Albert Darren
The best way to predict the future is to invent it !
展开
-
CCF CSP 201912-2 回收站选址(Python和C++语言100分)
经过读题分析,本题难点在于如何唯一表示坐标点,容易想到hash表的方式。C++语言的unordered_map哈希表键不支持pair类型或者自定义结构体,故将坐标点转而表示为一个用逗号分隔横纵坐标的字符串唯一表示,判断上下左右坐标点是否存在时只需要根据逗号标记解析出横纵坐标的整数表示,进行改变后再转换为标准字符串键的方式查询是否存在,注意使用哈希表的成员方法find查询哈希表的键,否则在键不存在时会出现大量零值二元组产生错误。使用Python语言的字典,通过元组作为键表示坐标点,值表示为真可以很方便地实现唯原创 2022-06-10 08:49:52 · 243 阅读 · 0 评论 -
CCF CSP 202012-2 期末预测之最佳阈值(C++语言100分)
考虑到安全指数是一个较大范围内的整数、小菜很可能搞不清楚自己是否真的安全,顿顿决定设置一个阈值 θ,以便将安全指数 y 转化为一个具体的预测结果——“会挂科”或“不会挂科”。因为安全指数越高表明小菜同学挂科的可能性越低,所以当 y≥θ 时,顿顿会预测小菜这学期很安全、不会挂科;反之若 y...原创 2022-06-09 10:51:41 · 411 阅读 · 0 评论 -
CCF CSP 202006-2 稀疏向量(C++语言100分)
经过读题分析,本题要求计算两个nnn维向量在稀疏表示下的内积。只需要对相同维度的数值相乘再累加即可,比较简单。具体实现这里给出三种方法:第一种方法,利用unordered_map容器存储第一个向量uuu维度到数值的映射关系,再对第二个向量vvv进行流处理,以O(1)O(1)O(1)时间复杂度查找稀疏表示的维度是否存在于第一个向量uuu,存在的做计算。第二种方法,重载小于运算符,利用set容器对稀疏表示的维度和数值组成的结构体自动排序,然后以O(logn)O(\log n)O(logn)时间复杂度查找稀疏表原创 2022-06-08 20:50:34 · 502 阅读 · 0 评论 -
CCF CSP 202009-2 风险人群筛查(C++语言100分)
某地疫情爆发后,出于“应检尽检”的原则,我们想要通知所有近期经过该高危区域的居民参与核酸检测。想要找出经过高危区域的居民,分析位置记录是一种简单有效的方法。具体来说,一位居民的位置记录包含 t 个平面坐标 (x1,y1),(x2,y2),⋯,(xt,yt),其中 (xi,yi) 表示该居民 i 时刻所在位置。高危区域则可以抽象为一个矩形区域(含边界),左下角和右上角的坐标分别为 (xl,yd) 和 (xr,yu),满足 xl...原创 2022-06-08 20:14:07 · 501 阅读 · 0 评论 -
CCF CSP 201903-2 二十四点(Python语言100分)
经过读题分析,本题直接采用Python语言内置字符串表达式执行函数eval即可快速AC,只需将小写字母xxx替换为∗*∗,///替换为//////,因为Python语言中///运算符表示浮点除法,而//////运算符才表示整数除法,等价于C++语言中的///运算符。4. 提交AC结果...原创 2022-06-08 08:30:05 · 275 阅读 · 0 评论 -
CCF CSP 201703-2 学生排队(C++语言100分)[简单模拟题]
#include <iostream>#include <unordered_map>using namespace std;const int N=1000;int stu_id[N]= {0};int main(){ unordered_map<int,int> um;// key=id,value=index int n,m,p,q,start,stop,temp;; cin>>n>>m; for原创 2022-03-16 21:38:23 · 258 阅读 · 0 评论 -
CCF CSP 201612-2 工资计算(C++语言100分)[金融计算]
#include <iostream>using namespace std;int main(){ int T,S; cin>>T; // avoid using float variable in order to assure the computation is accurate. if (T<=3500) { S=T; } else if(T<=4955) {原创 2022-03-15 21:05:22 · 334 阅读 · 0 评论 -
CCF CSP 201609-2 火车购票(C++语言100分)[简单模拟题]
#include <iostream>using namespace std;const int N=100,ROW=20,COLUMN=5;int is_purchased[ROW][COLUMN]= {0};int ticket_num[N]= {0};int main(){ int n,ticket,remain,start,stop,is_adjacent; cin>>n; for (int i=0; i<n ; i++ )原创 2022-03-15 16:29:43 · 261 阅读 · 0 评论 -
CCF CSP 201604-2 俄罗斯方块(C++语言100分)[模拟题]
#include <iostream>using namespace std;// declare and initiate three pseudo constantsconst int ROW=15,COLUMN=10,N=4;int russia_block[ROW+1][COLUMN],block[N][N];// declare a struct array to store the row and column index of blocks which equal 1原创 2022-03-13 18:05:06 · 490 阅读 · 0 评论 -
CCF CSP 201512-2 消除类游戏(C++语言100分)
#include <iostream>using namespace std;const int N=30,M=30;int chessman[N][M]= {0};bool is_clear[N][M]= {false};int main(){ int n,m; cin>>n>>m; for (int i=0; i<n ; i++ ) { for (int j=0; j<m ; j++ )原创 2022-03-13 11:10:45 · 5077 阅读 · 0 评论 -
CCF CSP 201509-2 日期计算(C++语言100分)
#include <iostream>using namespace std;bool is_leap_year(int year){ return ((year%4==0)&&(year%100!=0))||(year%400==0);}int month[12]= {31,28,31,30,31,30,31,31,30,31,30,31};int main(){ int y,d,m=1; cin>>y>>d;原创 2022-03-13 10:55:26 · 500 阅读 · 0 评论 -
CCF CSP 201503-2 数字排序(C++语言100分)[简单算法]
#include <iostream>#include <map>using namespace std;int main(){ map<int,int> cnt; multimap<int,int,greater<int>> cnt_out; int n,num; cin>>n; for (int i=0; i<n ; i++ ) { cin>>原创 2022-03-12 22:22:13 · 125 阅读 · 0 评论 -
CCF CSP 201412-2 Z字形扫描(C++语言100分)[简单算法]
#include <iostream>using namespace std;int main(){ int n,start; cin>>n; int matrix[n][n]; for (int i=0; i<n ; i++ ) { for (int j=0; j<n ; j++ ) { cin>>matrix[i][j]; }原创 2022-03-12 18:43:14 · 1321 阅读 · 0 评论 -
CCF CSP 202109-1 数组推导(C++语言100分)(Python语言100分)[序列处理]
#include <iostream>using namespace std;int main(){ int n,Bi,Bj,sum_max=0,sum_min=0; scanf("%d%d",&n,&Bi); sum_max=Bi; sum_min=Bi; for (int i=1;i<n ;i++ ) { scanf("%d",&Bj); sum_max+=Bj;原创 2022-03-11 17:38:35 · 867 阅读 · 0 评论 -
CCF CSP 202112-1 序列查询 (C++语言100分)[简单算法]
#include <iostream>#include <algorithm>#include <vector>using namespace std;int main(){ vector<int> A; A.push_back(0); int n,N,Ai,sum_A=0; scanf("%d%d",&n,&N); for (int i=1;i<=n ;i++ ) {原创 2022-03-11 17:11:34 · 416 阅读 · 0 评论 -
CCF CSP 202104-1 灰度直方图(C++语言100分)(Python语言100分)[统计计数]
#include <iostream>using namespace std;const int L=256;int h[L+1]= {0};int main_37(){ int n,m,l,grey_level,pixel_num; scanf("%d%d%d",&n,&m,&l); pixel_num=n*m; for (int i=0; i<pixel_num ; i++ ) { scanf("原创 2022-03-11 15:05:44 · 666 阅读 · 0 评论 -
CCF CSP 202012-1 期末预测之安全指数(C++语言100分)(Python语言100分)[序列处理]
#include <iostream>using namespace std;int main(){ int n,omega_i,score_i,y=0; scanf("%d",&n); for (int i=0;i<n ;i++ ) { scanf("%d%d",&omega_i,&score_i); y+=omega_i*score_i; } printf("%d\n",ma原创 2022-03-11 14:56:27 · 113 阅读 · 0 评论 -
CCF CSP 202009-1 称检测点查询(C++语言100分)[数学计算]
#include <cstdio>#include <map>#include <cmath>using namespace std;int main(){ int n,X,Y,xi,yi; scanf("%d%d%d",&n,&X,&Y); multimap<float,int> distance_multimap; for (int i=1;i<=n ;i++ ) {原创 2022-03-10 11:49:57 · 303 阅读 · 0 评论 -
CCF CSP 202006-1 线性分类器(C++语言100分)[简单算法]
#include <iostream>#include <cstdlib>#define N 1000using namespace std;int dot_arr[N+1][2]={0};char type_arr[N+1];int main(){ int n,m,A_less_than_0,A_greater_than_0,B_less_than_0,B_greater_than_0; bool res; scanf("%d%d",&原创 2022-03-10 09:55:02 · 810 阅读 · 0 评论 -
CCF CSP 201909-1小明种苹果(C语言100分)[序列处理]
#include <stdio.h>int main(){ int N,M,ai0,aij,i,j,sum,T=0,k,P=0; scanf("%d%d",&N,&M); for (i=1;i<=N ;i++ ) { scanf("%d",&ai0); sum=0; for (j=0;j<M ;j++ ) { scanf("%d",&a原创 2022-03-01 08:55:02 · 1315 阅读 · 0 评论 -
CCF CSP 201903-1 小中大(C语言100分)[序列处理]
#include <stdio.h>#define N 100000int arr7[N+1]={0};int main(){ int n,i,max,min; scanf("%d",&n); for (i=0;i<n ;i++ ) { scanf("%d",&arr7[i]); } if (arr7[0]>arr7[n-1]) { max=arr7[0],min=arr原创 2022-02-28 19:22:51 · 599 阅读 · 0 评论 -
CCF CSP 201812-1 小明上学(C语言100分)[序列处理]
#include <stdio.h>int main(){ int r,y,g,n,k,t,time=0; scanf("%d%d%d%d",&r,&y,&g,&n); while (n--) { scanf("%d%d",&k,&t); switch (k) { case 0://no case 1://red原创 2022-02-28 10:01:44 · 124 阅读 · 0 评论 -
CCF CSP 201809-1 卖菜 (C语言100分)[序列处理]
#include <stdio.h>#define N 1000int price[N+1]={0};int main(){ int n,avg,i; scanf("%d",&n); for (i=0;i<n ;i++ ) { scanf("%d",&price[i]); } printf("%d ",(price[0]+price[1])/2); for (i=1;i<n-1 ;i++原创 2022-02-28 09:07:52 · 203 阅读 · 0 评论 -
CCF CSP 201803-1 跳一跳(C语言100分)[序列处理]
#include <stdio.h>int main(){ int prev,cur,mul=1,res=0; scanf("%d",&prev); res+=prev; if (0==prev) { printf("%d\n",res); return 0; }else { scanf("%d",&cur); while (cur) {原创 2022-02-27 20:34:58 · 102 阅读 · 0 评论 -
CCF CSP 201604-1 折点计数(C语言100分)
#include <stdio.h>#define N 1000int an[N+1];int main_17(){ int n,cnt=0; scanf("%d",&n); for (int i=0;i<n ;i++ ) { scanf("%d",&an[i]); } for (int i=1;i<n-1 ;i++ ) { if ((an[i]>an[i-1]&a原创 2022-02-27 13:43:58 · 663 阅读 · 0 评论 -
CCF CSP 201512-1 数位之和(C语言100分)[文本处理]
#include <stdio.h>#include <string.h>int main_13(){ char n[10]; scanf("%s",n); int len=strlen(n),ans=0; for (int i=0;i<len ;i++ ) { ans+=(n[i]-48); } printf("%d",ans); return 0;}原创 2022-02-27 11:24:23 · 446 阅读 · 0 评论 -
CCF CSP 201503-1图像旋转(C语言100分)[索引映射]
#include <stdio.h>#define N 1000int mat[N][N]={0};int main(){ int n,m,v; scanf("%d",&n); scanf("%d",&m); for (int i=0;i<n ;i++ ) { for (int j=0;j<m ;j++ ) { scanf("%d",&v);原创 2022-02-26 13:56:13 · 184 阅读 · 0 评论 -
CCF CSP认证
❤️CCF CSP认证 (cspro.org)❤️1.主办单位中国计算机学会 (ccf.org.cn)——中国计算机领域十分权威、影响力很大的专业组织。2.认证目的重点考察软件开发者的算法设计和编程能力,向企业和高校推荐合格的软件人才。3.认证内容主要覆盖大学计算机及软件相关专业所学习程序设计、数据结构、算法,以及相关数学基础知识。编程语言允许使用:C/C++、Java和Python。4.认证方式认证全部采用上机编程方式,编制的程序在限定的时间空间内通过给定的数据测试后获得相应分数。共5道原创 2022-02-21 10:15:45 · 12929 阅读 · 0 评论