首页 > TAG信息列表 > 201403

CSP认证201403-3 命令行选项2[C++题解]:模拟题、字符串处理、stringstream处理getline

文章目录 题目解答题目链接 题目解答 来源:acwing 分析: 输出要求:对于无参数的选项,输出即可,当然每个只需要输出一次;对于有参数的选项,需要输出最后出现时所带的参数。 当遇到某个字符串既不是合法的选项,又不是某个合法选项的参数时,分析就停止。 比如下面例子, -a是无参

201403-1 相反数 (哈希表)

有 N 个非零且各不相同的整数。 请你编一个程序求出它们中有多少对相反数(a 和 −a 为一对相反数)。 输入格式: 第一行包含一个正整数 N。 第二行为 N 个用单个空格隔开的非零整数,每个数的绝对值不超过 1000,保证这些整数各不相同。 输出格式: 只输出一个整数,即这 N 个数中包含

【clickhouse】clickhouse SQL 执行计划

1.概述 转载:clickhouse SQL 执行计划 Clickhouse目前(20.6版本之前)没有直接提供explain查询,但是可以借助于后台的服务日志(设置为debug或者trace即可),能变相的实现该功能。 clickhouse-client -h localhost --send_logs_level=trace <<<"SQL语句" >/dev/null 这里我们使用

201403-2窗口

#include <iostream> using namespace std; const int N=10; struct{ int winno; int x_1,y_1,x_2,y_2; } win[N]; struct{ int x,y; }point[N]; int order[N]; int main(){ int n,m; cin>>n>>m; for(int i=0;i<n;++i){

201403-3 命令行选项

思路 字符串处理 实现 #include <iostream> #include <string> #include <map> #include <cstdio> using namespace std; typedef pair<string, string> PAIR; bool no_arg_options[30]; bool with_arg_options[30]; struct opts { map<string,

CCF CSP 201403-2窗口(100分)

201403-2 试题名称: 窗口 时间限制: 1.0s 内存限制: 256.0MB 问题描述   在某图形操作系统中,有 N 个窗口,每个窗口都是一个两边与坐标轴分别平行的矩形区域。窗口的边界上的点也属于该窗口。窗口之间有层次的区别,在多于一个窗口重叠的区域里,只会显示位于顶层的窗口里的内

CSP-201403-2-窗口

窗口(传送门) 一道水题,没什么难度,结构体解决的问题 满分代码 #include <bits/stdc++.h> using namespace std; int n; int m; struct node{ int is; int ie; int js; int je; int no; int r; }a[11]; int b[11]; int main(){ cin >> n >> m; for(int i = 0; i

201403-1相反数

#include<bits/stdc++.h> using namespace std; //本代码考虑了可能出现重复的数的情况 int main(void) { int n,x; map<int,int> mp;//映射: 键:数字 值:出现的次数 cin>>n; for(int i=1;i<=n;i++) { cin>>x; if(mp.find(x)==mp.end(

CCF-CSP 201403-2 窗口

问题描述   在某图形操作系统中,有 N 个窗口,每个窗口都是一个两边与坐标轴分别平行的矩形区域。窗口的边界上的点也属于该窗口。窗口之间有层次的区别,在多于一个窗口重叠的区域里,只会显示位于顶层的窗口里的内容。   当你点击屏幕上一个点的时候,你就选择了处于被点

CCF-CSP题解 201403-4 无线网络

新建不超过\(k\)个无线路由器,求使路由器1、2连通最少的中间路由器。 首先常规建图,将相距不超过\(r\)的路由器(包括新建的)相连。 想到了分层\(dijkstra\)。类似的,作\(bfs\)时记录已经经过的新建路由器个数\(b\)。\(queue\)内节点的形式就是当前路由器编号、经过的新建路由器个数、经

CCF CSP认证201403-3 命令行选项

201403-3 命令行选项 题目 思路 0分代码,路过的大佬求指正orz。 代码 #include<iostream> #include<cstring> #include<string> #include<map> #include<vector> using namespace std; int pra[30]={0}; void my_split(string cmd,vector<string> &str){

201403-2

醉了,得了30分的代码,我到底哪里错了,该怎么验证 #include <bits/stdc++.h> using namespace std; struct node { int x1; int y1; int x2; int y2; node *next; }; struct location { int x; int y; }; int main() { int n,m,a,b,c,d,flag=0; location loc[10]; cin>>n>>m; i

ccf-命令行选项-201403-3

分析: 这道题不是很难 用了一个split()函数 核心是: 对命令选项的判断 不要一个字符字符的判断 要一项一项的判断              比如ab:m:   分析步骤 (1) 读取一个字符(2)判断下一步是否有字符,下一个字符是否是':', 若是':",前进两位,标为带参数 否则前进一位,不带参数