首页 > 其他分享 >第14届蓝桥杯B组国赛

第14届蓝桥杯B组国赛

时间:2024-05-29 17:33:05浏览次数:25  
标签:nx 14 int 组国赛 long 蓝桥 ny using dis

子2023

#include <bits/stdc++.h>
using namespace std;
using LL = long long;

void solve() {

	vector<int> Q;
	for (int i = 1 ; i <= 2023 ; ++i) {
		int x = i;
		vector<int> tmp;
		while (x) {
			int y = x % 10;
			if (y == 2 || y == 0 || y == 3) {
				tmp.push_back(y);
			}
			x /= 10;
		}
		reverse(tmp.begin() , tmp.end());
		for (auto y : tmp) {
			Q.push_back(y);
		}
	}

	int SZ = Q.size();
	vector<LL> dp3(SZ+1),dp23(SZ+1),dp023(SZ+1),dp2023(SZ+1);
	for (int i = SZ - 1 ; i >= 0 ; --i) {
		dp3[i] = dp3[i + 1] + (Q[i] == 3); 
	}
	for (int i = SZ - 1 ; i >= 0 ; --i) {
		dp23[i] = dp23[i + 1] + (Q[i] == 2) * dp3[i + 1];
	}
	for (int i = SZ - 1 ; i >= 0 ; --i) {
		dp023[i] = dp023[i + 1] + (Q[i] == 0) * dp23[i + 1];
	}
	for (int i = SZ - 1 ; i >= 0 ; --i) {
		dp2023[i] = dp2023[i + 1] + (Q[i] == 2) * dp023[i + 1];
	}

	cout << dp2023[0] << "\n";
}

int main() {
	ios::sync_with_stdio(false);
	cin.tie(nullptr);

	int T = 1;
	while (T--) {
		solve();
	}

	return 0;
}

双子数

#include <bits/stdc++.h>
using namespace std;
using LL = long long;
const int N = 5E6 + 5;

int vaild[N];
vector<int> pri;

void init(int n) {
	vaild[1] = 1;
	for (int i = 2 ; i <= n ; ++i) {
		if (!vaild[i]) {
			pri.push_back(i);
		}
		for (int j = 0 ; j < pri.size() && i <= n / pri[j] ; ++j) {
			vaild[i * pri[j]] = 1;
			if (i % pri[j] == 0) {
				break;
			}
		}
	}
}

LL func(LL tar) {
	
	LL ans = 0;
	int SZ = pri.size();

	for (int i = 0 ; i + 1 < SZ ; ++i) {
		if (1LL * pri[i] * pri[i] > tar) break;
		auto check = [&] (int md) {
			LL x = 1LL * pri[i] * pri[md];
			if (x <= tar / x) return true;
			else return false;
		};
		int l = i + 1 , r = SZ - 1;
		while (l < r) {
			int md = (l + r + 1) / 2;
			if (check(md)) l = md;
			else r = md - 1;
		}
		if (check(l)) {
			ans += l - i;
		}

	}
	return ans;
}

void solve() {
	LL l = 2333 , r = 23333333333333;
	int n = sqrt(r) + 5;
	init(n);
	LL L,R;
	L = func(l - 1);
	R = func(r);
	// cout << L << " " << R << "\n";
	cout << R - L << "\n";
}

int main() {
	ios::sync_with_stdio(false);
	cin.tie(nullptr);

	int T = 1;
	while (T--) {
		solve();
	}

	return 0;
}

班级活动

#include <bits/stdc++.h>
using namespace std;
using LL = long long;

void solve() {
	
	int n;
	cin >> n;
	
	vector<int> a(n + 1) , num(n + 1);
	for (int i = 1 ; i <= n ; ++i) {
		cin >> a[i];
		num[a[i]] += 1;
	}

	int cnt1 = 0 , cnt2 = 0;
	for (int i = 1 ; i <= n ; ++i) {
		if (num[i]) {
			if (num[i] > 2) cnt2 += num[i] - 2;
			else if (num[i] == 1) cnt1 += 1; 
		} 
	}

	int ans = 0;
	if (cnt1 <= cnt2) {
		ans = cnt2;
	} else {
		ans += cnt2;
		cnt1 -= cnt2;
		ans += cnt1 / 2;
	}

	cout << ans << "\n";
}

int main() {
	ios::sync_with_stdio(false);
	cin.tie(nullptr);

	int T = 1;
	while (T--) {
		solve();
	}

	return 0;
}

合并数列

#include <bits/stdc++.h>
using namespace std;
using LL = long long;

void solve() {
	
	int n,m;
	cin >> n >> m;
	
	map<LL,int> mp;	
	vector<LL> a(n + 1) , b(m + 1) , sa(n + 1) , sb(m + 1);
	for (int i = 1 ; i <= n ; ++i) {
		cin >> a[i];
		sa[i] = sa[i - 1] + a[i];
		mp[sa[i]] += 1;
	}
	for (int i = 1 ; i <= m ; ++i) {
		cin >> b[i];
		sb[i] = sb[i - 1] + b[i];
		mp[sb[i]] += 1;
	}

	int ans = 0;
	for (auto f : mp) {
		if (f.second == 1) {
			ans += 1;
		}
	}

	cout << ans << "\n";
}

int main() {
	ios::sync_with_stdio(false);
	cin.tie(nullptr);

	int T = 1;
	while (T--) {
		solve();
	}

	return 0;
}

AB路线

#include <bits/stdc++.h>
using namespace std;
using LL = long long;
const int N = 1005 , inf = 1E9;
const int dx[] = {0 , 0 , -1 , 1} , dy[] = {1 , -1 , 0 , 0};

int n,m,K;
int s[N][N];
int dis[N][N][11];

void solve() {

	cin >> n >> m >> K;
	for (int i = 1 ; i <= n ; ++i) {
		for (int j = 1 ; j <= m ; ++j) {
			char c;
			cin >> c;
			if (c == 'B') s[i][j] = 1;
		}
	}

	memset(dis , -1 , sizeof dis);
	
	queue<array<int,3>> Q;
	Q.push({1 , 1 , K - 1});
	dis[1][1][K - 1] = 0;

	while (!Q.empty()) {
		auto f = Q.front();
		Q.pop();
		int x = f[0] , y = f[1] , rem = f[2];
		for (int k = 0 ; k < 4 ; ++k) {
			
			int nx = x + dx[k] , ny = y + dy[k];
			if (nx < 1 || nx > n || ny < 1 || ny > m) continue;
			
			if (rem > 0) {
				if (s[nx][ny] == s[x][y]) {
					if (dis[nx][ny][rem - 1] == -1) {
						dis[nx][ny][rem - 1] = dis[x][y][rem] + 1;
						Q.push({nx , ny , rem - 1});
					}
				}
			} else {
				if (s[nx][ny] != s[x][y]) {
					if (dis[nx][ny][K - 1] == -1) {
						dis[nx][ny][K - 1] = dis[x][y][rem] + 1;
						Q.push({nx , ny , K - 1});
					}
				}
			}

		}
	}
	
	const int inf = 2E9;
	int ans = inf;
	for (int i = 0 ; i <= K ; ++i) {
		if (dis[n][m][i] != -1) {
			ans = min(ans , dis[n][m][i]);
		}
	}

	if (ans == inf) {
		ans = -1;
	}

	cout << ans << "\n";
}

int main() {
	
	ios::sync_with_stdio(false);
	cin.tie(nullptr);

	int T = 1;
	while (T--) {
		solve();
	}

	return 0;
}

标签:nx,14,int,组国赛,long,蓝桥,ny,using,dis
From: https://www.cnblogs.com/xqy2003/p/18220752

相关文章

  • 蓝桥杯嵌入式 第六届国赛 更新中……
    题目配置注意事项复制LCD的工程,先配置资源---勾选完选项一定要再看一眼,可能选择错误ADC:配置ADC2_IN15,对应PB15引脚EEROM,配置PB6和PB7按键输入模式PB0、PB1、PB2、PA0LED一定要使能PD2PWM互补输出,用TIM15TIM6-10ms基准定时器代码-默写大师先......
  • GB-T 7714-2015
    [1]刘加林、多功能一次性压舌板:中国,92214985.2IP]1993-04-14.[2]河北绿洲生态环境科技有限公司.一种荒漠化地区生态植被综合培育种植方法:中国,01129210.5[P/OL].2001-10-24[2002-05-28].htp:/211.152.9.47/sipoasp/zlijs/hyjs-yxnewasp?recid=0129210.5&leixin.[3]KOSEKIA,M......
  • Pi 母公司将开发情感 AI 商业机器人;Meta 科学家:Sora 不是视频生成唯一方向丨RTE 开发
       开发者朋友们大家好: 这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(Real-TimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编辑的个人观......
  • Android14音频进阶之dump各阶段音频数据<Tee Sink方案>(七十五)
    简介:CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长!优质专栏:Audio工程师进阶系列【原创干货持续更新中……】......
  • 2 SAP前台操作手册-MM模块-采购管理-(标准/委外/寄售)采购信息记录创建、修改、显示、
    0总体说明SAP实施项目中,到了第3个阶段-系统实现,在这个阶段,因为蓝图汇报已经结束,配置也差不多完成了,自开发还在进行中,SAP标准功能下,可以进行基础业务的前台操作了,在实现阶段的尾端,客户指定的关键用户(俗称KU-KeyUser)会进行前台业务操作和练习,提高熟练程度,同时需要在外部SAP顾......
  • Vue从入门到实战Day12~14 - Vue3大事件管理系统
    一、用到的知识Vue3compositionAPIPinia/Pinia持久化处理ElementPlus(表单校验,表格处理,组件封装)pnpm包管理升级Eslint+prettier更规范的配置husky(Githooks工具):代码提交之前,进行校验请求模块设计VueRouter4路由设计AI大模型开发一整个项目模块(掌握最新的开发方式)·......
  • C129 并查集+01背包 P1455 搭配购买
    视频链接:C129并查集+01背包P1455搭配购买_哔哩哔哩_bilibili  E08【模板】背包DP01背包_哔哩哔哩_bilibiliP1455搭配购买-洛谷|计算机科学教育新生态(luogu.com.cn)//并查集+01背包#include<iostream>#include<cstring>#include<algorithm>usingname......
  • 【转载】从零开始的硬件之路14:解决AD工程文件过大问题及运行AD插件导入Logo
    原文链接:https://zhuanlan.zhihu.com/p/397285331 这篇讲两个内容,分别是”解决AD工程文件过大问题“和”运行AD插件导入图形符号“。目录:AD工程文件过大问题运行AD插件导入Logo首先何为工程文件过大,来图直接说明:可以看到一个工程文件占用了两百多的内存(我以前的一个......
  • 关于报错:npm下载时出现node_modules\.pnpm\[email protected]\node_modules\node-s
    关于npminstall出现Failedin911msatF:\Sert-Vue-master\vue\node_modules\.pnpm\[email protected]\node_modules\node-sass ELIFECYCLE Commandfailedwithexitcode1. 最开始从GitHub拉了一个项目,然后npmi的时候出现了报错npmERR!gypERR!stackError:`......
  • 免费,Python蓝桥杯等级考试真题--第13级(含答案解析和代码)
    Python蓝桥杯等级考试真题–第13级一、选择题答案:C解析:正向下标由0开始,下标3代表第四个元素,故答案为C。答案:A解析:range(0,4)的取前不取后,元组的符号是小括号,故答案为A。答案:C解析:Cherry所在的位置为下标2,故答案为C。二、编程题【参考程序】a=input()b=a.split......