![](https://img-blog.csdnimg.cn/82b167594f5040b4be1431d0f7fdff8e.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
CCF-CSP认证
CCF-CSP计算机软件能力认证 (https://www.cspro.org/)
Luqwera
这个作者很懒,什么都没留下…
展开
-
CCF CSP 认证历年真题解析目录(历年2、3题解析)
CCF-CSP认证原创 2021-05-20 20:54:45 · 1421 阅读 · 0 评论 -
CSP 201609-3 炉石传说
文章目录一、问题链接二、参考代码一、问题链接CSP 201609-3 炉石传说二、参考代码#include <bits/stdc++.h>using namespace std;using ll=long long;int main() { ios::sync_with_stdio(false); cin.tie(0); ll n; cin>>n; string s; //两个玩家,加上英雄共八个角色 ,{att,hea} vector<vector原创 2021-08-21 17:40:05 · 114 阅读 · 0 评论 -
CSP 201312-2 ISBN号码
文章目录一、问题链接二、参考代码一、问题链接CSP 201312-2 ISBN号码二、参考代码#include <bits/stdc++.h>using namespace std;int main() { ios::sync_with_stdio(false); cin.tie(0); string s; vector<int> v; cin>>s; char flag=s[s.size()-1]; s.erase(s.end()-1);原创 2021-08-20 00:31:20 · 67 阅读 · 0 评论 -
CSP 201312-3 最大的矩形
文章目录一、问题链接二、参考代码一、问题链接CSP 201312-3 最大的矩形二、参考代码#include <bits/stdc++.h>using namespace std;int main() { ios::sync_with_stdio(false); cin.tie(0); int n,ans=-1; cin>>n; vector<int> v(n); for(auto &i:v){ cin>>i; } fo原创 2021-08-23 00:02:39 · 69 阅读 · 0 评论 -
CSP 201809-2 买菜
文章目录一、问题链接二、思路三、错误代码四、参考代码一、问题链接CSP 201809-2 买菜二、思路关键是如何判断两个时间段的是相交的,判断相交之后如何求相交的时间段。例如,小H的某一时间段是[a,b],小W的某一时间段是[c,d],当a<=d&&b>=c时才会相交。相交时间段的长度为min(b,d)-max(a,c);三、错误代码#include <bits/stdc++.h>using namespace std;int main() {原创 2021-08-12 22:36:32 · 113 阅读 · 0 评论 -
CSP 201409-2 画图
文章目录一、问题链接二、参考代码一、问题链接CSP 201409-2 画图二、参考代码#include <bits/stdc++.h>using namespace std;int main() { ios::sync_with_stdio(false); cin.tie(0); int n,x1,y1,x2,y2; cin>>n; int ans=0; //右上角坐标代表方块坐标 vector<vector<int>> v(101原创 2021-08-20 10:56:17 · 103 阅读 · 0 评论 -
CSP 201509-2 日期计算
文章目录一、问题链接二、参考代码一、问题链接CSP 201509-2 日期计算二、参考代码#include <bits/stdc++.h>using namespace std;using ll = long long;int main() { ios::sync_with_stdio(false); cin.tie(0); vector<ll> v {31,28,31,30,31,30,31,31,30,31,30,31}; vector<ll>原创 2021-08-20 00:51:27 · 85 阅读 · 0 评论 -
CSP 202009-2 风险人群筛查
文章目录一、问题链接二、参考代码一、问题链接CSP 202009-2 风险人群筛查二、参考代码#include <bits/stdc++.h>using namespace std;using ll=long long;int main() { ios::sync_with_stdio(false); cin.tie(0); ll n,k,t,xl,yd,xr,yu; cin>>n>>k>>t>>xl>>yd&g原创 2021-08-14 16:18:15 · 74 阅读 · 0 评论 -
CSP 201609-2 火车购票
文章目录一、问题链接二、参考代码一、问题链接CSP201609-2 火车购票二、参考代码#include <bits/stdc++.h>using namespace std;int main() { ios::sync_with_stdio(false); cin.tie(0); int n,p; cin>>n; vector<vector<int>> a(20); for(int i=0; i<n; i++) { cin&原创 2021-08-20 00:43:36 · 64 阅读 · 0 评论 -
CSP 202104-2 邻域均值
文章目录一、问题链接二、思路三、参考代码一、问题链接CSP 202104-2 邻域均值二、思路二维前缀和注意:if(temp<=t*count)不等价于if(temp/count<=t),除法只保留整数部分,造会导致错误。三、参考代码#include <bits/stdc++.h>using namespace std;using ll = long long;int main() { ios::sync_with_stdio(false); cin.tie(原创 2021-08-19 01:19:36 · 394 阅读 · 0 评论 -
CSP 201709-2 公共钥匙盒
文章目录一、问题链接二、参考代码一、问题链接CSP 201709-2 公共钥匙盒二、参考代码#include <bits/stdc++.h>using namespace std;using gg = long long;struct Key { //钥匙编号,取/还时间,flag=0表示是还;flag=1表示是取 gg num, time, flag; Key(gg n, gg t, gg f) : num(n), time(t), flag(f) {}};原创 2021-08-20 00:35:54 · 139 阅读 · 0 评论 -
CSP 201612-2 工资计算
文章目录一、问题链接二、参考代码一、问题链接CSP 201612-2 工资计算二、参考代码#include <bits/stdc++.h>using namespace std;int main() { ios::sync_with_stdio(false); cin.tie(0); double ti; cin>>ti; //s上限 array<double,9>s{0,3500,5000,4500+3500,9000+3500,35000+3原创 2021-08-20 00:39:56 · 58 阅读 · 0 评论 -
CSP 201912-2 回收站选址
文章目录一、问题链接二、思路三、参考代码一、问题链接CSP 201912-2 回收站选址二、思路哈希映射设置关联容器map<array<ll,2>,int> hash;令其键记录垃圾坐标,值设置为1。遍历垃圾坐标,通过count()判断坐标(x,y)周围是否有垃圾。三、参考代码#include <bits/stdc++.h>using namespace std;using ll=long long;int main() { ios::sync_原创 2021-08-14 09:55:20 · 124 阅读 · 0 评论 -
CSP 202006-2 稀疏向量
文章目录一、问题链接二、思路三、参考代码一、问题链接CSP 202006-2 稀疏向量二、思路哈希映射三、参考代码#include <bits/stdc++.h>using namespace std;using ll=long long;int main() { ios::sync_with_stdio(false); cin.tie(0); ll n,a,b; cin>>n>>a>>b; map<ll,ll> u,原创 2021-08-14 11:15:18 · 135 阅读 · 0 评论 -
CSP 202012-2 期末预测之最佳阈值
文章目录一、问题链接二、思路三、参考代码一、问题链接CSP 202012-2 期末预测之最佳阈值二、思路map容器由于数据规模达到了10510^5105,因此,若采用两层遍历(即,用每一个阀值遍历每一个同学,来判断该阀值是否正确预测)则会超时,只能得到70分。定义容器为map<long long, array<long long, 2>>,键为安全指数yiy_iyi,值为一个大小为2的数组,第一个元素值[0]值为result==0的学生的个数,第二个元素[1]为resu原创 2021-08-18 00:28:36 · 254 阅读 · 0 评论 -
CSP 201604-2 俄罗斯方块
文章目录一、问题链接二、参考代码一、问题链接CSP 201604-2 俄罗斯方块二、参考代码#include<bits/stdc++.h>using namespace std;int main() { ios::sync_with_stdio(false); cin.tie(0); vector<vector<int>> a(20,vector<int>(15));//数组开的大一些,避免运行错误 int col; for(int i原创 2021-08-20 00:46:43 · 161 阅读 · 0 评论 -
CSP 201403-2 窗口
文章目录一、问题链接二、参考代码一、问题链接CSP 201403-2 窗口二、参考代码#include <bits/stdc++.h>using namespace std;struct window{ int x1,y1,x2,y2,num,priority;//优先级大的在上面 1,2...n window(int a,int b,int c,int d,int e,int f): x1(a),y1(b),x2(c),y2(d),num(e),priority(f){}原创 2021-08-20 10:24:04 · 169 阅读 · 0 评论 -
CSP 201604-3 路径解析
文章目录一、问题链接二、参考代码一、问题链接CSP 201604-3 路径解析二、参考代码#include <bits/stdc++.h>using namespace std;//以字符c来分割字符串 vector<string> split(string s,char c) { vector<string> res; stringstream ss(s); string temp; while(getline(ss,temp,c)) { re原创 2021-08-22 12:37:27 · 108 阅读 · 0 评论 -
CSP 201812-2 小明放学
文章目录一、问题链接二、思路三、参考代码一、问题链接CSP 201812-2 小明放学二、思路红、绿、黄灯依次循环亮起,红灯黄灯时等待,绿灯时通行。关键在于判断小明到达路口时灯的颜色,由于信号灯按红、绿、黄的顺序循环往复,对于循环问题采用取余的方法进行处理。注意,所用的时间需用long long类型。三、参考代码#include <bits/stdc++.h>using namespace std;int main() { ios::sync_with_stdio(fal原创 2021-08-13 19:59:45 · 140 阅读 · 0 评论 -
CSP 201412-2 Z字形扫描
文章目录一、问题链接二、参考代码一、问题链接CSP 201412-2 Z字形扫描二、参考代码#include <bits/stdc++.h>using namespace std;int main() { ios::sync_with_stdio(false); cin.tie(0); int n; cin>>n; vector<vector<int>> v(n,vector<int>(n)); for(int i=0; i原创 2021-08-20 00:57:03 · 94 阅读 · 0 评论 -
CSP 201503-2 数字排序
文章目录一、问题链接二、参考代码一、问题链接CSP 201503-2 数字排序二、参考代码#include <bits/stdc++.h>using namespace std;int main() { ios::sync_with_stdio(false); cin.tie(0); int n,num; cin>>n; vector<array<int,2>> v(2000);//[0]编号,[1]次数 while(n--){原创 2021-08-20 00:54:10 · 65 阅读 · 0 评论 -
CSP 201909-2 小明种苹果(续)
文章目录一、问题链接二、思路三、参考代码一、问题链接CSP 201909-2 小明种苹果(续)二、思路模拟用苹果树的编号对总数取余,模拟树围成一圈三、参考代码#include <bits/stdc++.h>using namespace std;struct tree { int t;//苹果总数 int d;//d=0为苹果未掉落 tree(int a,int b):t(a),d(b) {}};int main() { ios::sync_with_stdio(原创 2021-08-12 16:32:49 · 94 阅读 · 0 评论 -
CSP 202104-1 灰度直方图 (C++)
文章目录一、问题链接二、思路三、参考代码一、问题链接CSP 202104-1 灰度直方图 二、思路哈希映射三、参考代码#include<iostream>#include<vector>using namespace std;int main() { int n, m, l, temp; cin >> n >> m >> l; vector<int> h; //共有l个元素,调整数组大原创 2021-05-20 21:32:43 · 567 阅读 · 0 评论 -
CSP 201803-2 碰撞的小球
文章目录一、问题链接二、思路三、参考代码一、问题链接CSP 201803-2 碰撞的小球二、思路模拟将小球按输入的先后顺序编号,记录所有小球的编号及坐标。将所有小球按坐标从小到大排序,碰撞只能发生在相邻的两个小球之间。当小球发生碰撞或到达线段边界时改变方向。模拟每一秒小球的运动(即运动方向及坐标),模拟t秒之后,将小球按编号再次排序,输出各自的坐标。三、参考代码#include <bits/stdc++.h>using namespace std;struct Ball原创 2021-08-10 16:56:37 · 140 阅读 · 2 评论 -
CSP 201512-2 消除类游戏 (C++)
文章目录一、问题链接二、思路三、参考代码一、问题链接CSP 201512-2 消除类游戏 二、思路模拟注意:指定vector的⼤⼩时,要稍微大一些,若仅仅指定N * M,会造成运行时错误。三、参考代码#include<bits/stdc++.h>using namespace std;int main() { ios::sync_with_stdio(false); cin.tie(0); int n, m; cin>>n>>m; vecto原创 2021-08-02 23:57:06 · 404 阅读 · 0 评论 -
CSP 201712-2 游戏
文章目录一、问题链接二、思路三、参考代码一、问题链接CSP 201712-2 游戏二、思路模拟设置vector数组给n个玩家编号,设置指针指向当前报数的玩家,若此时玩家报的数字符合淘汰的标准,则通过erase()操作删除该玩家。三、参考代码#include <bits/stdc++.h>using namespace std;int k;int out(int n) { //返回1则淘汰 if(n % k==0 or n % 10==k) return 1; else原创 2021-08-10 10:32:20 · 81 阅读 · 0 评论 -
CSP 201703-2 学生排队
文章目录一、问题链接二、思路三、参考代码一、问题链接CSP 201703-2 学生排队 二、思路模拟,用vector数组及find泛型算法,进行元素插入删除操作注意:对数组元素操作时,要先删除(erase),再插入(insert)。三、参考代码#include <bits/stdc++.h>using namespace std;int main() { ios::sync_with_stdio(false); cin.tie(0); int n,m,p,q; cin&原创 2021-08-08 11:21:50 · 103 阅读 · 0 评论 -
CSP 201903-2 二十四点 (C++)
文章目录一、题目描述二、问题链接三、思路四、参考代码五、有趣的一点一、题目描述二、问题链接201903-2 二十四点 三、思路乘法与加法优先级不同,可用队列来实现不同优先级的运算。四、参考代码#include <cstdio>#include <cstring>#include <iostream>#include <queue>#include <string>using namespace std;int com原创 2021-05-20 21:27:16 · 237 阅读 · 0 评论