当前位置: 首页 > news >正文

蓝桥杯2020年第十一届省赛 CC++ 研究生组2.0

约数个数

#include<iostream>
#include<cmath>
using namespace std;
int main(){int n = 78120, ans = 0, sqr = sqrt(n);for(int i = 1; i <= sqr; i++){if(n % i == 0){ans++;//printf("%d,", i);if(i * i != n) {ans++;//printf("%d,", n / i);}}}//printf("\n");printf("%d", ans);//96return 0;
} 

打卡题

寻找2020

#include<iostream>
#include<string>
using namespace std;
typedef long long ll;
const int maxn = 10, N = 6;
string s[maxn];
int main(){
//	ll ans = 0;
//	for(int i = 0; i < N; i++){
//		cin >> s[i];
//	}
//	for(int i = 0; i < N; i++){
//		for(int j = 0; j <= N; j++){
//			if(s[i][j] == '2' && s[i][j + 1] == '0' && s[i][j + 2] == '2' && s[i][j + 3] == '0') ans++;
//			if(s[i][j] == '2' && s[i + 1][j] == '0' && s[i + 2][j] == '2' && s[i + 3][j] == '0') ans++;
//			if(s[i][j] == '2' && s[i + 1][j + 1] == '0' && s[i + 2][j + 2] == '2' && s[i + 3][j + 3] == '0') ans++;
//		}
//	}
//	printf("%lld\n", ans);//16525printf("16525");return 0;
} 

扣掉送的5分,可恶的菜狗属性啊
超出范围的位置直接不再判断

#include<iostream>
#include<string>
using namespace std;
typedef long long ll;
const int maxn = 310, N = 300;
string s[maxn];
int main(){
//	ll ans = 0;
//	for(int i = 0; i < N; i++){
//		cin >> s[i];
//	}
//	for(int i = 0; i < N; i++){
//		for(int j = 0; j <= N; j++){
//			if(j + 3 <= N && s[i][j] == '2' && s[i][j + 1] == '0' && s[i][j + 2] == '2' && s[i][j + 3] == '0') ans++;
//			if(i + 3 < N && s[i][j] == '2' && s[i + 1][j] == '0' && s[i + 2][j] == '2' && s[i + 3][j] == '0') ans++;
//			if(i + 3 < N && j + 3 <= N && s[i][j] == '2' && s[i + 1][j + 1] == '0' && s[i + 2][j + 2] == '2' && s[i + 3][j + 3] == '0') ans++;
//		}
//	}
//	printf("%lld\n", ans);//16520printf("16520");return 0;
} 

平面分割

#include<iostream>
using namespace std;
int main(){int line = 20, q = 20;long long ans = 1 + line * (line + 1) / 2;//手推 while(q--){ans *= 2; }printf("%lld", ans);//221249536return 0;
}

圆的切割方式猜错了……每次加一个圆,至多可以把已有的圆和直线都分为两份。小结版戳这里

#include<iostream>
using namespace std;
int main(){int line = 20, q = 20;long long ans = 1 + line * (line + 1) / 2;//手推 for(int i = 1; i <= q; i++){ans += line * 2 + (i - 1) * 2;}printf("%lld", ans);//1391return 0;
}

蛇形填数

#include<iostream>
using namespace std;
const int N = 50;
int a[N][N];
int main(){int n = 20, d = 1, l = 1, c = 1;a[1][1] = d;
//	while(l <= 2 * n && c <= 2 * n){
//		a[l][++c] = ++d;//右移 
//		while(c >= 2){//左下 
//			a[++l][--c] = ++d;
//		}
//		a[++l][c] = ++d;//下移
//		while(l >= 2){
//			a[--l][++c] = ++d;
//		} 
//	}
//	for(int i = 1; i <= n; i++){
//		for(int j = 1; j <= n; j++){
//			printf("%d\t", a[i][j]);
//		}
//		printf("\n");
//	}
//	printf("%d\n", a[2][2]);
//	printf("%d\n", a[20][20]);//761printf("761"); return 0;
}

模拟之图形打印

七段码

#include <iostream>
using namespace std;
int main()
{// 请在此输入您的代码cout << 74;return 0;
}

80
差太多,手算还是不行

#include<iostream>
using namespace std;
const int N = 10, M = 7;
int e[N][N] = {0}, f[N], open[N];//e[i][j]表示i和j之间是否连通;f[i]表示结点i的父节点;open[i] 1表示结点i打开,0表示关闭 
long long ans = 0;int find(int x){if(f[x] == x) return x;return f[x] = find(f[x]); //压缩路径 
}void dfs(int n){if(n == 8){for(int i = 1; i <= M; i++) {f[i] = i;//并查集初始化,每个结点各为一个集合 }for(int i = 1; i <= M; i++){for(int j = 1; j <= M; j++){if(e[i][j] && open[i] && open[j]){//连通则合并 f[find(i)] = find(j);}}} int cnt = 0;//当前方案中的连通块有几个 for(int i = 1; i <= M; i++){if(open[i] && f[i] == i) cnt++;}	if(cnt == 1) ans++;//只有一个连通块,则为合法方案 return;}open[n] = 1;//打开二极管ndfs(n + 1);open[n] = 0;//关闭二极管n dfs(n + 1);
}int main(){e[1][2] = e[1][6] = 1;//把二极管视为顶点,是否连通视为之间是否有边 e[2][1] = e[2][3] = e[2][7] = 1;e[3][2] = e[3][7] = e[3][4] = 1;e[4][3] = e[4][5] = 1;e[5][4] = e[5][7] = e[5][6] = 1;e[6][1] = e[6][7] = e[6][5] = 1;e[7][2] = e[7][3] = e[7][6] = e[7][5] = 1;dfs(1); cout << ans;return 0;
}

成绩分析

#include<iostream>
using namespace std;
int main(){int n, max = -1, min = 101, x;double sum = 0;scanf("%d", &n);for(int i = 0; i < n; i++){scanf("%d", &x);if(x > max) max = x;if(x < min) min = x;sum += x;}printf("%d\n%d\n%.2f", max, min, sum / n);return 0;
}

打卡题

回文日期

#include<iostream>
using namespace std;
bool isLeap(int y){if(y % 400 == 0 || (y % 4 == 0 && y % 100 != 0)) return true;//闰年29 return false;//平年28 
}
bool judge(int n){int d = n % 100, m = n / 100 % 100, y = n / 10000;if(d < 1 || d > 31 || (d > 30 && (m == 4 || m == 6 || m == 9 || m == 11))) return false;if((m == 2 && d > 29 && isLeap(y)) || (m == 2 && d > 28 && !isLeap(y))) return false;if(m > 12 || m < 1) return false;return true; 
}
bool sym(int n){int a[8] = {0}, t, num = 0;while(n){t = n % 10;a[num++] = t;n /= 10;}for(int i = 0; i < 4; i++){if(a[i] != a[7 - i]) return false;}return true;
}
bool special(int n){int a[8] = {0}, t, num = 0;while(n){t = n % 10;a[num++] = t;n /= 10;}if(a[0] == a[2] && a[2] == a[5] && a[5] == a[7] && a[1] == a[3] && a[3] == a[4] && a[4] == a[6]) return true;return false;
}
int main(){int t, t1, t2, flag = 1;scanf("%d", &t);t1 = t2 = t + 1;while(!judge(t1) || !sym(t1)) t1++;printf("%d\n", t1);while(!judge(t2) || !special(t2)) t2++;printf("%d", t2);return 0;
}

加了回文判断的日期处理类问题。

  • 闰年
    • 闰年:二月29天,y % 400 == 0 || (y % 4 == 0 && y % 100 != 0)
    • 平年:二月28天
  • 大小月
    • 1,3,5,7,8,10,12月都是31天
    • 2月天数根据平闰判断
    • 4,6,9,11月都是30天
  • 得出周几 利用基姆拉尔森计算公式
    W= (d+2m+3(m+1)/5+y+y/4-y/100+y/400+1)%7
    其中,w为周几,0~6对应周日,周一,周二……周六
    年y,月m, 日d
    1月换为13月,2月换为14月

作物杂交

#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
const int maxn = 2010, N = 1e5 + 10;
int need[maxn], have[maxn] = {0}; 
int n, m, k, t, x;struct f{int x, y, z;
} fs[N];bool cmp(f f1, f f2){return f1.z <= f2.z;
}ll time(int n){int xt = 0, yt = 0, l = 1, r = k, mid = (l + r) / 2;while(l <= r && fs[mid].z != n){mid = (l + r) / 2;if(fs[mid].z > n) r = mid - 1;else l = mid + 1; }if(have[fs[mid].x] == 0) xt = time(fs[mid].x);if(have[fs[mid].y] == 0) yt = time(fs[mid].y);return max(need[fs[mid].x], need[fs[mid].y]) + max(xt, yt);
}int main(){cin >> n >> m >> k >> t;for(int i = 1; i <= n; i++){cin >> need[i];}while(m--){cin >> x;have[x] = 1;}for(int i = 1; i <= k; i++){cin >> fs[i].x >> fs[i].y >> fs[i].z;}sort(fs + 1, fs + k + 1, cmp);printf("%lld", time(t));return 0;
}

1分都木得骗到

#include<bits/stdc++.h>
using namespace std;
const int N = 2010;
typedef pair<int, int> PII;
int w[N], f[N];
bool have[N];vector<PII> fa[N];int dfs(int t)
{for(int i = 0; i < fa[t].size(); i++){int a = fa[t][i].first, b = fa[t][i].second;if(!have[a]) dfs(a);if(!have[b]) dfs(b);if(have[a] && have[b]) {have[t] = true;f[t] = min(f[t], max(w[a], w[b]) + max(f[a], f[b]));}}return f[t];
}
int main()
{int n, m, k, t;cin >> n >> m >> k >> t;memset(f, 0x3f3f, sizeof f);for(int i = 1; i <= n; i++) cin >> w[i];for(int i = 1; i <= m; i++){int temp;cin >> temp;have[temp] = true;f[temp] = 0;}for(int i = 1; i <= k; i++){int a, b, c;cin >> a >> b >> c;fa[c].push_back({a, b}); }cout << dfs(t);return 0;
}

子串分值和

#include<iostream>
#include<string>
using namespace std;
int main(){string s;long long ans = 0;cin >> s;for(int i = 0; i < s.size(); i++){for(int j = i; j < s.size(); j++){int flag[26] = {0};for(int k = i; k <= j; k++){if(flag[s[k] - 'a'] == 0){flag[s[k] - 'a'] = 1;ans++;}}}}cout << ans;return 0;
} 

过50%测试点
看出来了要用递推,但是找不出来规律欸

#include<iostream>
#include<string>
using namespace std;
int main(){string s;long long ans = 0, l,  flag[25] = {0};//l也要设为long long否则两个测试点不过cin >> s;s = " " + s;l = s.size();for(int i = 1; i < l; i++){ans += (i - flag[s[i] - 'a']) * (l - i);flag[s[i] - 'a'] = i;//该元素最近出现的位置 }	cout << ans; return 0;
}

荒岛探测

相关文章:

蓝桥杯2020年第十一届省赛 CC++ 研究生组2.0

约数个数 #include<iostream> #include<cmath> using namespace std; int main(){int n 78120, ans 0, sqr sqrt(n);for(int i 1; i < sqr; i){if(n % i 0){ans;//printf("%d,", i);if(i * i ! n) {ans;//printf("%d,", n / i);}}}//…...

SOCKS5代理、代理IP、跨界电商、游戏技术与网络安全的综合探讨

在全球经济一体化的大背景下&#xff0c;"出海"已成为许多企业尤其是电商和游戏行业的重要战略方向。然而&#xff0c;随着企业业务的扩展到海外市场&#xff0c;网络安全、数据隐私和内容访问等问题也随之而来。本文将深入探讨SOCKS5代理、代理IP在跨界电商和游戏行…...

关于HTTP1.0、1.1、1.x、2.0、3.0与HTTPS之间的理解

关于HTTP1.0、1.1、1.x、2.0、3.0与HTTPS之间的理解 HTTP的由来 HTTP是Hyper Text Transfer Protocol&#xff08;超文本传输协议&#xff09;的缩写。它的发展是万维网协会&#xff08;World Wide Web Consortium&#xff09;和Internet工作小组IETF&#xff08;Internet Eng…...

useRef总结

一、使用ref引用值 在react中ref的主要用途是用来获取DOM元素或者某个组件实例的引用。当你想访问真实的DOM节点&#xff0c;或者需要在组件之间共享可变数据且不需要触发重新渲染时&#xff0c;通常会使用ref。在vue中ref是响应式的&#xff0c;当数据发生改变时&#xff0c;相…...

计算机网络知识等汇总补充

计算机网络知识汇总补充 一、四次挥手1、为什么TCP要等待2MSL2、如果说一个系统中&#xff0c;有大量的time_wait和close_wait&#xff0c;会是什么原因&#xff1f; 二、你是怎么解决粘包问题&#xff1f;三、你觉得哪些场景适合redis四、redis的持久化策略五、你会怎么保证my…...

word中插入mathtype版的符号后,行间距变大解决方法

问题 解决方法 选中该段&#xff0c;设置固定值行距。如果是宋体&#xff0c;小四&#xff0c;1.25行距&#xff0c;那么固定值就为20磅。 成功解决。...

怎么给html文件本地启动一个服务去访问

首先得先安装node 要启动一个本地的 HTTP 服务器&#xff0c;请先安装 Node.js&#xff0c;然后通过命令行在 HTML 文件所在文件夹下运行 npx serve...

LabVIEW无线快速存取记录器(WQAR)测试平台

LabVIEW无线快速存取记录器&#xff08;WQAR&#xff09;测试平台 随着民用航空业的迅速发展&#xff0c;航空安全的保障日益成为公众和专业领域的关注焦点。无线快速存取记录器&#xff08;WirelessQuick Access Recorder, WQAR&#xff09;作为记录飞行数据、监控飞行品质的…...

12-pyspark的RDD算子注意事项总结

目录 相近算子异同总结相近变换算子异同foreach和foreachPartitionfold和reducecoalesce和repatition 相近动作算子异同cache和persist 算子注意事项需要注意的变换算子需要注意的动作算子 PySpark实战笔记系列第三篇 10-用PySpark建立第一个Spark RDD(PySpark实战笔记系列第…...

设备基础命令,路由基础

直连路由 静态路由 动态路由 根据路由器学习路由信息、生成并维护路由表的方法包括直连路由(Direct)、静态路由(Static)和动态路由(Dynamic)。直连路由&#xff1a;路由器接口所连接的子网的路由方式称为直连路由&#xff1b;非直连路由&#xff1a;通过路由协议从别的路由器…...

golang context

作用&#xff1a;用于在go协程中 传递上下文、超时、取消、传值 底层实现&#xff1a;是由互斥锁、channel、map来实现的 互斥锁&#xff1a;保护临界资源 channel: 用于信号通知&#xff0c;比如ctx.Done() map: 保存父ctx下派生的所有子ctx, 父ctx关闭&#xff0c;子ctx都关…...

GPT中的Transformer架构以及Transformer 中的注意力机制

目录 1 GPT中的Transformer架构 2 transformer中的注意力机制 参考文献&#xff1a; 看了两个比较好的视频&#xff0c;简单做了下笔记。 1 GPT中的Transformer架构 GPT是Generative Pre-trained Transformer单词的缩写&#xff0c;其中transformer是一种特定的神经网络&a…...

Hive的简单学习二

一Hive 库的基本操作 1.1 建库 1.默认路径是/user/hive/warehouse 例如 我输入命令 create database text1 则text1出现在 warehouse目录下 2.指定位置创建数据库 create database text2 location /bigdata29/bigdata29db 后面的路径是hdfs的路径 3.最终写法 加上if n…...

Qt事件处理机制3-事件函数的分发

Qt开发中&#xff0c;经常重写event函数和具体的事件处理函数&#xff0c;例如mousePressEvent、paintEvent等&#xff0c;那么这些具体的事件处理函数是怎样被调用的呢&#xff1f;答案是由继承自QObject的类中的event函数来处理事件分发。这里以间接继承自QWidget的派生类MyB…...

4月9号总结

java学习 一.steam流 1.介绍 Stream 是 Java 8 中引入的一种处理集合数据的新抽象。它提供了一种高效且便利的方式来处理集合中的元素&#xff0c;支持函数式编程的特性&#xff0c;使得集合操作变得更加简洁和灵活。 2.创建 List和Set可以直接调用接口的steam方法转换为流 …...

Linux生态系统:探索Linux的开源世界

Linux生态系统:探索Linux的开源世界 在前面的博客中,我们深入探讨了Linux的各种技能和技巧,从入门到进阶,再到高手级别。这一路走来,相信大家对Linux已经有了全面的认识和掌握。然而,Linux的魅力远不止于此。今天,我们将进一步探索Linux生态系统,了解Linux在开源世界中的重要地…...

XILINX 10G PCS PMA IP核使用

文章目录 一、设计框图二、模块设计三、IP核配置四、上板验证五、总结 一、设计框图 关于GT高速接口的设计一贯作风&#xff0c;万兆以太网同样如此&#xff0c;只不过这里将复位逻辑和时钟逻辑放到了同一个文件ten_gig_eth_pcs_pma_0_shared_clock_and_reset当中。如果是从第…...

Scrapy框架内存泄漏问题及解决

说明&#xff1a;仅供学习使用&#xff0c;请勿用于非法用途&#xff0c;若有侵权&#xff0c;请联系博主删除 作者&#xff1a;zhu6201976 一、问题背景及原因 官方文档&#xff1a;Debugging memory leaks — Scrapy 2.11.1 documentation Scrapy是一款功能强大的网络爬虫框…...

app 创建快捷入口 在手机上面多个icon

activity-alias详解及应用-CSDN博客 Android动态修改应用图标最佳实践 - 简书 AndroidManifest.xml 中 <activity-aliasandroid:name"包名.ui.mine.SecondActivityAlias"android:label"快捷入口"android:icon"mipmap/collection_one"andro…...

【网安小白成长之路】6.pkachu、sql-lbas、upload-lbas靶场搭建

&#x1f42e;博主syst1m 带你 acquire knowledge&#xff01; ✨博客首页——syst1m的博客&#x1f498; &#x1f51e; 《网安小白成长之路(我要变成大佬&#x1f60e;&#xff01;&#xff01;)》真实小白学习历程&#xff0c;手把手带你一起从入门到入狱&#x1f6ad; &…...

vue 项目中添加DES加密

vue 项目中添加DES加密 由于现在项目使用http协议&#xff0c;且登录界面是明文传输&#xff0c;项目真正上线后基本的密码传输都很不安全。 决定用前端框架加密后再进行传输&#xff0c;以提高密码传输过程中的安全性。 crypto-js 是一个流行的 JavaScript 加密库&#xff0…...

【记录问题】如何测试虚拟机已经可以连接网络

如何测试虚拟机已经可以连接网络 要测试虚拟机是否已经连接网络&#xff0c;可以采取以下步骤&#xff1a; 检查虚拟网络编辑器 使用管理员权限打开虚拟网络编辑器&#xff0c;检查NAT方式下的虚拟子网网段。 确保虚拟机的网络设置与虚拟子网网段相匹配。检查虚拟机网络设置 …...

MySQL数据库的详解(1)

DDL&#xff08;数据库操作&#xff09; 查询 查询所有数据库&#xff1a;show databases;当前数据库&#xff1a;select database(); 创建 创建数据库&#xff1a;create database [ if not exists] 数据库名 ; 使用 使用数据库&#xff1a;use 数据库名 ; 删除 删除数…...

Python 网络爬虫技巧分享:优化 Selenium 滚动加载网易新闻策略

简介 网络爬虫在数据采集和信息获取方面发挥着重要作用&#xff0c;而滚动加载则是许多网站常用的页面加载方式之一。针对网易新闻这样采用滚动加载的网站&#xff0c;如何优化爬虫策略以提高效率和准确性是一个关键问题。本文将分享如何利用 Python 中的 Selenium 库优化滚动…...

Apache SeaTunnel 社区 3 月月报

各位热爱 SeaTunnel 的小伙伴们&#xff0c;SeaTunnel 社区 3 月月报来啦&#xff01;这里将记录 SeaTunnel 社区每个月的重要更新&#xff0c;并评选出月度之星&#xff0c;欢迎关注。 SeaTunnel 月度 Merge Stars 感谢以下小伙伴 3 月为 Apache SeaTunnel 做的精彩贡献&…...

ElasticSearch 的 ConstantScoreQuery 的理解

ConstantScoreQuery的定义&#xff1a; A query that wraps another query and simply returns a constant score equal to 1 for every document that matches the query. It therefore simply strips of all scores and always returns 1. 结合DisMaxQueryBuilder可以查找所…...

【RV1106的ISP使用记录之一】基础环境搭建

公司缺少ISP工程师&#xff0c;做为图像算法工程师的我这就不就给顶上来了么&#xff0c;也没给发两份工资&#xff0c;唉~ 先写个标题&#xff0c;占一个新坑&#xff0c;记录RK平台的传统ISP工作。 一、基础环境的硬件包括三部分&#xff1a; 1、相机环境&#xff0c;用于采…...

mars3d.MaterialType.Image2修改配置面状:图片2的speed数值实现动画效果说明

摘要&#xff1a; mars3d.MaterialType.Image2修改配置面状&#xff1a;图片2的speed数值实现动画效果说明 前提&#xff1a; 1.在示例中&#xff0c;尝试给mars3d.MaterialType.Image2材质的图片加上speed参数&#xff0c;实现动画效果&#xff0c;但是没有看到流动效果说明…...

Elasticsearch部署安装

环境准备 Anolis OS 8 Firewall关闭状态&#xff0c;端口自行处理 Elasticsearch&#xff1a;7.16.1&#xff08;该版本需要jdk11&#xff09; JDK&#xff1a;11.0.19 JDK # 解压 tar -zxvf jdk-11.0.19_linux-x64_bin.tar.gz# 编辑/etc/profile vim /etc/profile# 加入如下…...

Android零基础入门(一)配置环境和安装Android Studio

闲来无事学一下Android&#xff0c;本人目前java为主&#xff0c;jdk的环境就不赘述了 配置环境 Java JDK5 或 以后版本 Android SDK Java运行时环境&#xff08;JRE&#xff09; Android Studio 你可以从 Oracle 的 Java 网站&#xff1a;JDKJava SE下载下载最新版本的 Jav…...