第十二届蓝桥杯省赛第一场B组

第十二届蓝桥杯(2021)C++ 省赛 B 组第一场题解(全部) A、空间 【问题描述】 小蓝准备用 256MB 的内存空间开一个数组,数组的每个元素都是 32 位 二进制整数,如果不考虑程序占用的空间和维护内存需要的辅助空间,请问 256MB 的空间可以存储多少个 32 位二进制整数? 略 B、卡片 【问题描述】 小蓝有很多数字卡片,每张卡片上都是数字 0 到 9。 小蓝准备用这些卡片来拼一些数,他想从 1 开始拼出正整数,每拼一个, 就保存起来,卡片就不能用来拼其它数了。 小蓝想知道自己能从 1 拼到多少。 例如,当小蓝有 30 张卡片,其中 0 到 9 各 3 阅读详情

A:ASC(Java)

76

A:空间(C++)

67108864

B:卡片

3181

C:直线

40257

D:货物摆放

2430

E:路径

10266837

F:时间显示

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
import java.util.TimeZone;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		long x = sc.nextLong();
		sc.close();
		Date date = new Date(x);
		DateFormat df = new SimpleDateFormat("HH:mm:ss");
		df.setTimeZone(TimeZone.getTimeZone("GMT"));
		System.out.println(df.format(date));
	}
}

G:最少砝码(Java)

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		long n = sc.nextLong();
		sc.close();
		long w = 1L;
		long i = 1L;
		long s = 1L;
		while (s < n) {
			w *= 3;
			s += w;
			i++;
		}
		System.out.println(i);
	}
}

G:砝码称重(C++)

import java.util.Scanner;

public class Main {

	static int N = 110;
	static int M = 200010;
	static int B = M / 2;

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();
		int[] w = new int[N];
		int m = 0;
		for (int i = 1; i <= n; i++) {
			w[i] = sc.nextInt();
			m += w[i];
		}
		sc.close();
		boolean[][] f = new boolean[N][M];
		f[0][B] = true;
		for (int i = 1; i <= n; i++) {
			for (int j = -m; j <= m; j++) {
				f[i][j + B] = f[i - 1][j + B];
				if (j - w[i] >= -m) {
					f[i][j + B] |= f[i - 1][j - w[i] + B];
				}
				if (j + w[i] <= m) {
					f[i][j + B] |= f[i - 1][j + w[i] + B];
				}
			}
		}
		int res = 0;
		for (int j = 1; j <= m; j++) {
			if (f[n][j + B]) {
				res++;
			}
		}
		System.out.println(res);
	}

}

H:杨辉三角形

import java.util.Scanner;

public class Main {

	static int n;

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		n = sc.nextInt();
		sc.close();
		for (int k = 16;; k--) {
			if (check(k)) {
				break;
			}
		}
	}

	private static boolean check(int k) {
		long l = k * 2;
		long r = Math.max((long) n, l);
		while (l < r) {
			long mid = l + r >> 1;
			if (C((int) mid, k) >= n) {
				r = mid;
			} else {
				l = mid + 1;
			}
		}
		if (C((int) r, k) != n) {
			return false;
		}
		System.out.println(r * (r + 1) / 2 + k + 1);
		return true;
	}

	private static long C(int a, int b) {
		long res = 1;
		for (int i = a, j = 1; j <= b; i--, j++) {
			res = res * i / j;
		}
		if (res > n) {
			return res;
		}
		return res;
	}
}

I:双向排序

待续

J:括号序列

import java.util.Scanner;

public class Main {

	static int N = 5010;
	static int MOD = (int) 1e9 + 7;
	static int n;
	static char[] str = new char[N];
	static long[][] f;

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String s = sc.next();
		sc.close();
		str = (" " + s).toCharArray();
		n = s.length();
		long l = work();
		str = (" " + reverse(s)).toCharArray();
		for (int i = 1; i <= n; i++) {
			if (str[i] == '(') {
				str[i] = ')';
			} else {
				str[i] = '(';
			}
		}
		long r = work();
		System.out.println(l * r % MOD);
	}

	private static long work() {
		f = new long[N][N];
		f[0][0] = 1;
		for (int i = 1; i <= n; i++) {
			if (str[i] == '(') {
				for (int j = 1; j <= n; j++) {
					f[i][j] = f[i - 1][j - 1];
				}
			} else {
				f[i][0] = (f[i - 1][0] + f[i - 1][1]) % MOD;
				for (int j = 1; j <= n; j++) {
					f[i][j] = (f[i - 1][j + 1] + f[i][j - 1]) % MOD;
				}
			}
		}
		for (int i = 0; i <= n; i++) {
			if (f[n][i] > 0) {
				return f[n][i];
			}
		}
		return -1;
	}

	private static String reverse(String s) {
		return new StringBuffer(s).reverse().toString();
	}
}
第十二届蓝桥杯省赛第一场C++B组真题(括号序列) 这道题目是第十二届蓝桥杯省赛的最后一题,我认为这道题目难度还是非常大的,现在来详细说一下这道题目的做法。 首先来说一下什么样的括号序列才是合法的括号序列,需要具备以下两个条件: (1)左括号数目和右括号数目相同 (2)任何一个位置及之前的所有括号中,左括号数目大于右括号数目 我们要想使得给定的括号序列变得合法,我们可能需要向其中一些位置加入相应括号,可能是左括号也可能是右括号,题目中要求的是所有可能的合法方案数,那我们现在就需要思考一个问题了,我们加入的左括号和加入的右括号之间会不会相互影响?显.. 阅读详情

相关推荐

2019 第十届蓝桥杯Java省赛B组题目

2019 第十届蓝桥杯Java省赛B组题目——河南赛区

最少砝码(思维+找规律)

a[i]表示用i个砝码 能够构成的 最大可测量重量(此时的范围自然也对应着0~a[i])然后可以根据这个max[i+1] = 3*max[i]+1。k+1 可以用(2k+1) - (k-0) 表示。k+2 可以用(2k+1) - (k-1) 表示。2k+1 可以用(2k+1) - (0) 表示。2k+2 可以用(2k+1) + (1) 表示。3k+1 可以用(2k+1) + (k) 表示。第n+1个和前n个放两边 可测得x-k;这样n+1个砝码可以表示出0~3k+1。第n+1个为x(x>k);

qq_51070956的博客 859

分布式推理服务(策略:数据并行、张量并行、流水线并行、专家并行)技术分析

摘要:分布式推理突破单GPU内存和算力限制,支持大模型部署。四种核心策略包括: 数据并行:复制模型拆分数据,提升吞吐但内存效率低; 流水线并行:模型分阶段执行,支持超大模型但存在计算气泡; 张量并行:拆分层内矩阵运算,延迟低但通信开销大; 专家并行:动态激活MoE模型专家,计算高效但路由复杂。实际应用中常组合策略(如3D并行),需权衡模型规模、硬件条件与性能目标。

技术引领业务创新 946

3424. 最少砝码 (构造 规律

添加链接描述 你有一架天平。现在你要设计一套砝码,使得利用这些砝码可以称出任意小于等于 N 的正整数重量。 那么这套砝码最少需要包含多少个砝码? 注意砝码可以放在天平两边。 输入格式 输入包含一个正整数 N。 输出格式 输出一个整数代表答案。 数据范围 对于所有评测用例,1≤N≤109。 输入样例: 7 输出样例: 3 样例解释 3 个砝码重量是 1、4、6,可以称出 1 至 7 的所有重量。 #include<bits/stdc++.h> using namespace std; #defin

我见青山多妩媚,料青山见我应如是 518

基于CRU和WorldClim的高分辨率(1km)气候数据生成

基于CRU和WorldClim的高分辨率(1km)气候数据生成

lhq7842955的博客 1694

dos攻击 --hping3

dos使用hping3攻击

qq_65880213的博客 2748

acwing 3424. 最少砝码(蓝桥杯)

题目:3424. 最少砝码 思路:假设n个砝码可以测量1-k个数,那么再加上值为2k+1的砝码,可以接着测出k+1~3k+1 ,也就是说n+1个砝码可以测量1~3k+1 ,即a[n+1]=3a[n]+1,而a[0]=0,a[1]=1,a[2]=3*a[1]+1,…可以推出a[n]=(3^n-1)/2,只要a[n]>=k,求出对应的n即可 #include<bits/stdc++.h> using namespace std; typedef long long LL; const i

记录一些刷过的题并分享学习心得 924

SkyWalking跨线程Trace传递实战:手把手教你用RunnableWrapper解决异步链路中断问题

本文深入解析了SkyWalking在异步编程场景下链路追踪中断的根源,并提供了使用RunnableWrapper等官方包装类的实战解决方案。通过详细的原理解析和代码示例,手把手指导开发者如何实现跨线程的Trace传递,确保分布式系统监控链路的完整性,有效解决异步任务导致的链路中断问题。

sand8的博客 495

2021第十二届蓝桥杯C/C++B组省赛 第一场 部分题目总结

试题A: 思路:考计算机基础知识 bit:位,又名比特,缩写是b,是计算机中最小的数据单位,其实就是0,1这样的二进制位 Byte:字节,缩写是B,是计算机文件大小的基本计算单位,一个字符是1Byte,如果是汉字,则是2Byte 1Byte=8bit 1Byte=8bit(1B=8b) 1个字节=8位,即一个字节由8个二进制位构成 1KB=1024Byte 1MB=1024KB 1GB=1024MB 1TB=1024GB 所以本题: 1个32位二进制数占4个字节 25610241024/4=6710886

qq_51817638的博客 1485

ROS机器人里程计模型

3.5 移动机器人系统模型 相信大家的机器人平台STM32端底层控制和机器人urdf建模都已经顺利完成了,在正式开始ros端编写机器人启动功能包之前,我们还不得不学习一些必要的理论知识。别担心数学不好,这里基本都是高中数学。下面我们开始,Are you ready? 没准备好也开始了。 3.5.1 常用坐标系系统模型 在移动机器人技术研究中,最为常用的坐标系统是笛卡尔坐标系统。而在SLAM算法研究中,有如下几个比较常见的笛卡尔坐标系统,它们分别为机器人坐标系XR YR OR 、传感器坐标系XS YS OS

「小白学移动机器人」一个专注分享移动机器人相关知识的公众号! 1万+

01 Python学习总结:Python简介及入门

Python 是一门高级编程语言,以其简洁、易读和强大的功能而广受欢迎。它适用于多种应用场景,包括 Web 开发、数据分析、人工智能、自动化脚本等。以下是 Python 的简介及入门知识总结,帮助你快速了解并开始学习 Python。

数据知道的博客 1万+

第十二届蓝桥杯省赛 第一场 C++ B组 题解 (全)

第十二届蓝桥杯 A 空间 问题描述 小蓝准备用 256MB 的内存空间开一个数组,数组的每个元素都是 32 位 二进制整数,如果不考虑程序占用的空间和维护内存需要的辅助空间,请问 256MB 的空间可以存储多少个 32 位二进制整数? 思路: int,四个字节,不知道可以用sizeof, 1MB=1024KB,1KB=1024B; code: #include <bits/stdc++.h> #define int long long #define rep(i, l, r) for (in

万伏小太阳 2005

C# 与 PaddleOCR:一行代码实现高效图片文字识别的实战指南

本文介绍了如何使用 PaddleOCRSharp 进行图像文字识别,涵盖了从环境准备到高级功能的完整流程。首先,通过 NuGet 安装 PaddleOCRSharp 并下载预训练模型。接着,展示了单张图片识别的最小化示例和详细实现,包括模型配置、图片预处理和结果输出。进阶功能部分介绍了多语言和竖排文本识别的实现方法。此外,文章还提供了 WinForms 图形界面开发的完整示例,展示了如何通过界面加载图片、执行识别并展示结果。最后,探讨了批量处理优化策略,如并行处理多张图片以提高性能。通过这些步骤,开发者可以

墨夶的博客 1004

第十二届蓝桥杯 2021年省赛真题 (Java 大学B组) 第一场

蓝桥杯 2021年省赛真题 (Java 大学B组 ) #A ASC #B 卡片 #C 直线 #D 货物摆放 #E 路径 #F 时间显示 #G 最少砝码 #H 杨辉三角形 #I 双向排序 #J 括号序列

NOW I GOT ONE WAY 6万+

基于DRU-HVDC的构网型海上风电场环流机理仿真复现

本文介绍了基于DRU-HVDC的构网型海上风电场环流机理仿真模型的构建方法。主要内容包括: 完整的Simulink模型结构,包含主模型文件GFM_DRU_Main.slx和配置脚本GFM_DRU_Setup.m 系统参数设置,包括基础频率(20Hz)、电压基准值(690V)、功率基准值(2MVA)等 四种仿真场景配置:电压不平衡、相位不平衡、阻抗不平衡和频率不平衡 风力发电机(WT)子系统的详细构建步骤,包含电压源、输出阻抗和测量模块 变压器和DRU整流器的参数设置 该模型可用于研究构网型风电场的环流机理。

huanghm88的专栏 262

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

第十二届蓝桥杯大赛软件类省赛第一场 Java 大学 B 组题目蓝桥杯JavaB组大赛软件类省赛第十二届第一场

第十一届蓝桥杯大赛软件类省赛第二场 Java 大学 B 组题目 题目PDF下载链接 链接:https://pan.baidu.com/s/1LSZvUV5dFwNtSbOshORU1Q 提取码:6666 复制这段内容后打开百度网盘手机App,操作更方便哦

理解~析的博客 1228

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

2021第十二届蓝桥杯C++ B组第一场省赛赛后总结

试题 A: 空间 答案:256 * 1024 * 1024 / 4 = 67108864 试题 B: 卡片 #include <iostream> #include <cstring> #include <algorithm> using namespace std; int s[10]; bool check(int x) { while (x) { int t = x % 10; x /= 10;

hebtu_Kangweiqi的博客 2849

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

2021第十二届蓝桥杯C++B组省赛 第一场个人题解(大部分)

C++省赛B组个人题解(部分) 目录试题A:空间试题B:卡片试题C:直线试题D:货物摆放试题E:路径试题F:时间显示试题G:砝码称重试题H:杨辉三角形试题I:双向排序试题J:括号序列个人总结: 试题A:空间 题目 答案:67108864 分析 计算机组成原理题,一上来就栽跟头了。。。 1byte=8bits,Bit意为"位"或"比特",是计算机运算的基础; Byte意为"字节",是计算机文件大小的基本计算单位; 8个二进制位构成1个"字节(Byte)",即1Byte=8bit 所以1个32位二进制数占4个

江湖不信眼泪 1万+

2021 第十二届蓝桥杯 Java 省赛 B 组(第一场)真题解析

A. ASC(5分) ​ 已知大写字母 A 的 ASCII 码为 65,请问大写字母 L 的 ASCII 码是多少? 答案:76 代码 点击就送。直接输出字母对应的 int 值即可。 public class Main { public static void main(String[] args) { // 76 System.out.println((int)'A' + " " + (int)'L'); } } B. 卡片(5分) ​ 小蓝有很多数字卡片,每张卡片上都是数字 0

XYFS's Blog 2万+

2021第十二届蓝桥杯省赛C++B组第一场

2021第十二届蓝桥杯省赛C++B组第一场 试题 A: 空间(5 分) 小蓝准备用 256MB 的内存空间开一个数组,数组的每个元素都是 32 位 二进制整数,如果不考虑程序占用的空间和维护内存需要的辅助空间,请问 256MB 的空间可以存储多少个 32 位二进制整数? #include<cstdio> int main(){ printf("%d\n",256*1024*1024/4); return 0; } 试题 B: 卡片(5分) 小蓝有很多数字卡片,每张卡片上都是数字 0 到 9

zhhhj77的博客 479

2021年第十二届蓝桥杯省赛 Java B组 第一场 全部题解

2021年第十二届蓝桥杯省赛B组第一场(真题+全部题解)

FallenSQL的博客 1万+

2021第十二届蓝桥杯第一场省赛JAVA B组真题解析(带源码及解析)

蓝桥杯历年真题及解析. 目录:蓝桥杯历年真题及解析.A:ASC(难度:★)题目:分析:代码:B:卡片(难度:★)题目:分析:代码:C:直线(难度:★★)题目:分析:代码:D:货物摆放(难度:★★)题目:分析:代码:E:路径(难度:★★★)题目:分析:代码:F:时间显示(难度:★★★)题目:分析:代码:G:最少砝码(难度:★★★★)题目:分析:代码:H:杨辉三角形(难度:★★★★)题目:分析:代码:I:双向排序(难度:★★★★★)题目:分析:代码:J:括号序列(难度:★★★★★)题目:分析:代码: A:ASC

王跃坤的博客 1万+

第十二届蓝桥杯C++B组省赛第一场

试题 A:空间 本题总分:5 分 【问题描述】 小蓝准备用 256MB 的内存空间开一个数组,数组的每个元素都是 32 位 二进制整数,如果不考虑程序占用的空间和维护内存需要的辅助空间,请问 256MB 的空间可以存储多少个 32 位二进制整数? 【答案提交】 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一 个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 ans:67108864 #include <iostream> using namespace std;

todaycode 3722

第十二届蓝桥杯2021年4月c/c++ B组省赛第一场赛后总结

第十二届蓝桥杯c/c++ B组省赛第一场赛后总结 文章目录第十二届蓝桥杯c/c++ B组省赛第一场赛后总结A:空间B:卡片C:直线D:货物摆放E:路径F:时间显示G:砝码称重H:杨辉三角形I :双向排序J:括号序列总结 A:空间 【问题描述】 小蓝准备用 256MB 的内存空间开一个数组,数组的每个元素都是 32 位 二进制整数,如果不考虑程序占用的空间和维护内存需要的辅助空间,请问 256MB 的空间可以存储多少个 32 位二进制整数? 【答案提交】 这是一道结果填空的题,你只需要算出结果后提交即可。本题

m0_51876133的博客 1565

【骗分】2021年第十二届蓝桥杯省赛第一场 C++ B组

2021年第十二届蓝桥杯省赛第一场 C++ B组 试题 A:空间 【问题描述】 小蓝准备用256MB的内存空间开一个数组,数组的每个元素都是32位 二进制整数,如果不考虑程序占用的空间和维护内存需要的辅助空间,请问256MB的空间可以存储多少个32位二进制整数? 【答案提交】 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一 个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 【答案】:67108864 #include <iostream> using

xuelanghanbao的博客 2789

2021 第十二届 蓝桥杯省赛第一场 JAVA 大学 B 组

小贴士:本文字数6千,粗读约需5分钟,精读约需30分钟 文章目录观点A. 字母B. 卡片C. 直线D. 货物摆放E. 路径F. 时间显示G. 砝码称重H. 杨辉三角形I. 双向排序J. 括号序列总结 观点 今年的省赛和以前有点区别,更重视数学,算法,思想了,有点往ACM靠拢,相信这是一个趋势,以后的蓝桥杯将会更重视思维 提示:题目光看不练是不行的,建议打开IDE自己实现一波!!! A. 字母 题目:字母A的ASCLL码值表示为65,那么字母L转换成ASCLL码值是多少 解题思路 方法一:直接从A(65

weixin_44028406的博客 3641
上一篇: 第十二届蓝桥杯省赛JavaB组 试题 G: 最少砝码
下一篇: 数据结构 java
小小风0
博客等级 码龄7年 38粉丝 28原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值