草庐IT

2022年蓝桥杯c/c++ b组解析(持续更新中)

三金C_C 2023-04-18 原文

成绩出来了是省二,大概算下来差不读30多分左右不清楚具体的给分所以也不好评价了,接下来还有个jscpc,下面的这些题目等有时间了再更新吧!


上午结束了蓝桥杯c/c++ b组比赛,对于比赛过程与争议这里就不再多说了,还是把题目记录下来同时为日后更上一层楼吧。 首先总结一下,本人实力一般,这次要当炮灰了,填空对了1个,(第2个题目也太有争议了,真的醉了),编程大题大概能对C、D、F、最后一个I(本题蓝桥杯14年考过类似的,基本上思路是一样的,不过这里需要数字很大,时间上面最多跑到40%吧),其余是没有时间来看。愁ing 总的算了一下大概40-50分,省一是无缘了,省二都不一定有了(毕竟是线上考吧) 我感觉难度还是有的,不过相比于21年送分是到位的,比20年稍微难一些,毕竟这里大题有8道了,时间上多少较往年还是不够的,怎么说呢,还是继续努力吧,后面多加努力吧。 欢迎大家留言讨论,讨论你的想法与思路,共同学习!

目录

九进制转十进制 (5分)


额,这个题简直送分吧,不过就相当于开胃菜吧,直接手算了。
答案是 1478

2*9^3+2*9+2*9^0

顺子日期 (5分)


首先这个有几个注意点,第一 为什么20221023不是顺子日期,说明210不是顺子(不清楚0到底算不算),第二 题目说20220123出现了一个顺子123,说明012不是顺子,进而说明0不算(迷?)
附应该有的日期,不一定正确,有待考证

答案 4或14(听说是官方出的,都算对)

刷题统计(10分)


送分题目,也就是签到题啦,注意开long long.

#include <iostream>
#include <algorithm>

using namespace std;

int n;
typedef long long ll;
ll a,b,day,sum;

int main(){
	cin>>a>>b>>n;
	day=0,sum=0;
	int count=1;
	while(sum<n){
		int temp=count%7;
		if(temp>=1&&temp<=5) sum+=a;
		if(temp==6||temp==0) sum+=b;
		count++;
	}
	printf("%d",count-1);
	return 0;
}

修剪灌木 (10分)


话说我做个题目就感觉有数学方法可以解决,因为很明显是有规律的,为什么呢?你从左边剪到右边,再从右边剪到左边,这里就会感到这其中存在对称性。
不过一开始我还好奇这个4 2 4怎么来的,后来看了题目才知道她是傍晚修剪的,早上还可以剪的。
再找N=4,可以得知数据为6 4 4 6.
在1-n/2课树,可以发现规律是2*(n-i)
那么就知道这个当N为偶数的时候将数组对半开,当奇数也是同理。
下面附代码。

#include <iostream>
#include <cstring>
using namespace std;

int n;

int main(){
	cin>>n;
	int a[n+1];
	memset(a,0,sizeof(a));
	if(n%2==0){
		for(int i=1;i<=n/2;i++){
			a[n+1-i]=a[i]=2*(n-i);
		}
	}else{
		for(int i=1;i<=n/2+1;i++){
			a[n+1-i]=a[i]=2*(n-i);
		}
	}
	for(int i=1;i<=n;i++){
		cout<<a[i]<<endl;
	}
	return 0;
}

X进制减法 (15分)


题目没看懂,到现在都不知道怎么从321到65,留个坑吧,后续一定要补上!

统计子矩阵(15分)

这个题目呢我一开始想用4个循环的来做,发现太暴力了,时间上面会比较慢。
后面我想到只要2个循环就可以解决,具体方法如下:

#include<iostream>
using namespace std;

int a[505][505] = { 0 }, b[505][505] = { 0 };

int main()
{
	int n, m, k, i, j, sum = 0;
	cin >> n >> m >> k;
	for (i = 0; i < n; i++) {
		for (j = 0; j < m; j++) {
			cin >> a[i][j];
			if (a[i][j] <= k) {
				sum++;
			}
			b[i][j] = a[i][j];
			if (j - 1 >= 0) {
				b[i][j] += b[i][j - 1];
			}
			if (i - 1 >= 0) {
				b[i][j] += b[i - 1][j];
			}
			int l = j - 1;
			while (l >= 0) {
				if (b[i][j] - b[i][l] <= k) {
					sum++;
				}
				l--;
			}
			l = i - 1;
			while (l >= 0) {
				if (b[i][j] - b[l][j] <= k) {
					sum++;
				}
				l--;
			}
		}
	}
	cout << sum << endl;
	return 0;
}


积木画(20分)


这个题目考场没有做出来,参考其他博主的代码,后期再深入研究一下:
本题是洛谷题目覆盖墙面,醉了,基本一样…

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int n;
int mod=1000000007;
int f[1000010][2];
int main(){
    scanf("%d",&n);
    f[0][0]=1;f[1][0]=1;
    for(int i=2;i<=n;i++){
        f[i][0]=(f[i-1][1]+f[i-1][0]+f[i-2][0])%mod;
        f[i][1]=(f[i-1][1]+2*f[i-2][0])%mod;
    }
    cout<<f[n][0];
}

扫雷(20分)


后期填坑吧…

李白打酒加强版(25分)


多的不说,出了往年题目的类似版,也是没啥了...
不过不知道这个数据能跑到多少

#include <iostream>

using namespace std;

long long cnt=0;

int mod=1000000007;

int  n,m,c=2;

void dfs(int x,int y,int c){
	if(x<0||y<0) return ;
	if(x==0&&y==1&&c==1){
		cnt++;
		cnt=cnt%mod;
		return;
	}
	if(x>0) dfs(x-1,y,c*2);
	if(y>0) dfs(x,y-1,c-1);
}

int main(){
	int m,n;
	cin>>n>>m;
	dfs(n,m,c);
	cout<<cnt<<endl;
}

砍竹子(25分)

有时间看吧,填坑。

有关2022年蓝桥杯c/c++ b组解析(持续更新中)的更多相关文章

  1. Ruby 解析字符串 - 2

    我有一个字符串input="maybe(thisis|thatwas)some((nice|ugly)(day|night)|(strange(weather|time)))"Ruby中解析该字符串的最佳方法是什么?我的意思是脚本应该能够像这样构建句子:maybethisissomeuglynightmaybethatwassomenicenightmaybethiswassomestrangetime等等,你明白了......我应该一个字符一个字符地读取字符串并构建一个带有堆栈的状态机来存储括号值以供以后计算,还是有更好的方法?也许为此目的准备了一个开箱即用的库?

  2. ruby-on-rails - 如何验证 update_all 是否实际在 Rails 中更新 - 2

    给定这段代码defcreate@upgrades=User.update_all(["role=?","upgraded"],:id=>params[:upgrade])redirect_toadmin_upgrades_path,:notice=>"Successfullyupgradeduser."end我如何在该操作中实际验证它们是否已保存或未重定向到适当的页面和消息? 最佳答案 在Rails3中,update_all不返回任何有意义的信息,除了已更新的记录数(这可能取决于您的DBMS是否返回该信息)。http://ar.ru

  3. ruby - 解析 RDFa、微数据等的最佳方式是什么,使用统一的模式/词汇(例如 schema.org)存储和显示信息 - 2

    我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i

  4. ruby - 用逗号、双引号和编码解析 csv - 2

    我正在使用ruby​​1.9解析以下带有MacRoman字符的csv文件#encoding:ISO-8859-1#csv_parse.csvName,main-dialogue"Marceu","Giveittohimóhe,hiswife."我做了以下解析。require'csv'input_string=File.read("../csv_parse.rb").force_encoding("ISO-8859-1").encode("UTF-8")#=>"Name,main-dialogue\r\n\"Marceu\",\"Giveittohim\x97he,hiswife.\"\

  5. ruby-on-rails - 使用 rails 4 设计而不更新用户 - 2

    我将应用程序升级到Rails4,一切正常。我可以登录并转到我的编辑页面。也更新了观点。使用标准View时,用户会更新。但是当我添加例如字段:name时,它​​不会在表单中更新。使用devise3.1.1和gem'protected_attributes'我需要在设备或数据库上运行某种更新命令吗?我也搜索过这个地方,找到了许多不同的解决方案,但没有一个会更新我的用户字段。我没有添加任何自定义字段。 最佳答案 如果您想允许额外的参数,您可以在ApplicationController中使用beforefilter,因为Rails4将参数

  6. ruby-on-rails - 我更新了 ruby​​ gems,现在到处都收到解析树错误和弃用警告! - 2

    简而言之错误:NOTE:Gem::SourceIndex#add_specisdeprecated,useSpecification.add_spec.Itwillberemovedonorafter2011-11-01.Gem::SourceIndex#add_speccalledfrom/opt/local/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:91./opt/local/lib/ruby/gems/1.8/gems/rails-2.3.8/lib/rails/gem_dependency.rb:275:in`==':und

  7. jenkins部署1--jenkins+gitee持续集成 - 2

    前置步骤我们都操作完了,这篇开始介绍jenkins的集成。话不多说,看操作1、登录进入jenkins后会让你选择安装插件,选择第一个默认的就行。安装完成后设置账号密码,重新登录。2、配置JDK和Git都需要执行路径,所以需要先把执行路径找到,先进入服务器的docker容器,2.1JDK的路径root@69eef9ee86cf:/usr/bin#echo$JAVA_HOME/usr/local/openjdk-82.2Git的路径root@69eef9ee86cf:/#whichgit/usr/bin/git3、先配置JDK和Git。点击:ManageJenkins>>GlobalToolCon

  8. ruby - 用 YAML.load 解析 json 安全吗? - 2

    我正在使用ruby2.1.0我有一个json文件。例如:test.json{"item":[{"apple":1},{"banana":2}]}用YAML.load加载这个文件安全吗?YAML.load(File.read('test.json'))我正在尝试加载一个json或yaml格式的文件。 最佳答案 YAML可以加载JSONYAML.load('{"something":"test","other":4}')=>{"something"=>"test","other"=>4}JSON将无法加载YAML。JSON.load("

  9. objective-c - 在设置 Cocoa Pods 和安装 Ruby 更新时出错 - 2

    我正在尝试为我的iOS应用程序设置cocoapods但是当我执行命令时:sudogemupdate--system我收到错误消息:当前已安装最新版本。中止。当我进入cocoapods的下一步时:sudogeminstallcocoapods我在MacOS10.8.5上遇到错误:ERROR:Errorinstallingcocoapods:cocoapods-trunkrequiresRubyversion>=2.0.0.我在MacOS10.9.4上尝试了同样的操作,但出现错误:ERROR:Couldnotfindavalidgem'cocoapods'(>=0),hereiswhy:U

  10. ruby-on-rails - Rails Associations 的更新方法是什么? - 2

    这太简单了,太荒谬了,我在任何地方都找不到关于它的任何信息,包括API文档和Rails源代码:我有一个:belongs_to关联,我开始理解当您没有关联时您在Controller中调用的正常模型方法与您有关联时调用的方法略有不同。例如,我的关联在创建Controller操作时运行良好:@user=current_user@building=Building.new(params[:building])respond_todo|format|if@user.buildings.create(params[:building])#etcetera但我找不到关于更新如何工作的文档:@user

随机推荐