首页 > 编程语言 >2023青岛市程序设计竞赛小学组题解

2023青岛市程序设计竞赛小学组题解

时间:2023-06-03 21:23:14浏览次数:47  
标签:pre 青岛市 int 题解 ll tr long 2023 define

1.付钱

题目链接:https://www.luogu.com.cn/problem/U303904

代码:

#include<bits/stdc++.h>
#define ll long long
using namespace std;
int main(){
	ll n;cin>>n;
	cout<<n/100<<' '<<(n%100)/50<<' '<<(n%50)/20<<' '<<(n%50%20)/10<<' '<<(n%10)/5<<' '<<n%5;
	return 0;
}

 

解题思路:

最简单的贪心,签到题

 

2.开关灯

题目链接:https://www.luogu.com.cn/problem/U303899

代码:

#include<bits/stdc++.h>
#define ll long long
using namespace std;
int main(){
	int T;cin>>T;
	while(T--){
		int n,m,k;
		bool flag=0;
		cin>>n>>m>>k;
		for(int x=0;x<=n;x++){
			for(int y=0;y<=m;y++){
				if(x*m+y*n-2*x*y==k){
					cout<<"Yes\n";
					flag=1;
					break;
				}
			}
			if(flag)break;
		}
		if(!flag)cout<<"No\n";
	}
	return 0;
}

  

解题思路:

枚举点亮行数和列数,计算量的灯数,判断是否为k即可

错误原因:

考虑不周全,条件只有1条

 

3.正方形

题目链接:https://www.luogu.com.cn/problem/U303907

代码:

 

#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int N = 1e3+39+7;
int a[N][N];
ll ans=1e15,n,sum[N][3];bool flag=0;
void dfs(int pre,int tr,ll xsum){
	if(tr>n&&pre<2)return;
	else if(tr>n&&pre==2){
		ans=min(ans,xsum);
		return;
	}
	dfs(pre,tr+1,xsum+sum[tr][pre]);
	if(pre+1<=2)dfs(pre+1,tr+1,xsum+sum[tr][pre+1]);
}
int main(){
//	freopen("square.in","r",stdin);
//	freopen("square.out","w",stdout);
	memset(sum,0,sizeof(sum));
	cin>>n;int t=2*n-1;
	for(int i=1;i<=t;i++){
		for(int j=1;j<=t;j++){
			cin>>a[i][j];
		}
	}
	if(a[n][n]!=0)flag=1,a[n][n]=0;
	for(int quan=2;quan<=n;quan++){
		for(int color=0;color<3;color++){
			for(int i=n-quan+1;i<=n+quan-1;i++){
				if(i==n-quan+1||i==n+quan-1){
					for(int j=n-quan+1;j<=n+quan-1;j++)
						sum[quan][color]+=(a[i][j]==color?0:1);
				}else{
					sum[quan][color]+=(a[i][n-quan+1]==color?0:1);
					sum[quan][color]+=(a[i][n+quan-1]==color?0:1);
				}
			}
		}
	}
	dfs(0,1,0);
	cout<<ans+(flag);
	return 0;
}

  

#include<bits/stdc++.h>
#define max(a,b) (a>b?a:b)
#define min(a,b) (a<b?a:b)
#define ll long long
using namespace std;
const int N = 5e2+39+7;
const ll INF = 0x7fffffffffff;
ll n,a[N*2][N*2],cnt[N][3],ans=INF;
inline int Hash(int x,int y){return n-max(max(n-x,x-n),max(n-y,y-n));}
int main(){
	cin>>n;
	for(int i=1;i<=2*n-1;i++){
		for(int j=1;j<=2*n-1;j++){
			cin>>a[i][j];
			cnt[Hash(i,j)][a[i][j]]++;
		}
	}
	for(int i=2;i<n;i++){
		for(int j=i+1,sum=0;j<=n;j++,sum=0){
			for(int k=1;k<=n;k++){
				ll all=8*n-8*k;
				if(!all)all=1;
				if(k<i)sum+=all-cnt[k][2];
				else if(k<j)sum+=all-cnt[k][1];
				else sum+=all-cnt[k][0];
			}
			ans=min(ans,sum);
		}
	}
	cout<<ans;
	return 0;
}

  

解题思路:

方法1:统计每一层同时改变成同一种颜色需要多少次,使用深搜,求最小和即可

方法2:统计每一层每一种颜色各有多少个,枚举颜色区间,取最小和即可

标签:pre,青岛市,int,题解,ll,tr,long,2023,define
From: https://www.cnblogs.com/zhanghx-blogs/p/17454621.html

相关文章

  • 2023年第三届陕西省大学生网络安全技能大赛本科高校组
    Crypto奇怪的sar第一步常规的lcg算法n1=137670797028117726329534659376416493367957852768263083700434198723955223922183386928456013703791817601151754417828367188186912209697081337658512940425529211281290630976671911327606706953154608427885071841566358882014......
  • 2023-06-03:redis中pipeline有什么好处,为什么要用 pipeline?
    2023-06-03:redis中pipeline有什么好处,为什么要用pipeline?答案2023-06-03:Redis客户端执行一条命令通常包括以下四个阶段:1.发送命令:客户端将要执行的命令发送到Redis服务器。2.命令排队:Redis服务器将收到的命令放入队列中,按照先进先出(FIFO)的原则等待执行。3.命令执行:当Redis服务器轮......
  • 第十届蓝桥杯c++b组国赛题解(还在持续更新中...)
    试题A:平方序列解题思路:直接枚举一遍x的取值,然后按照题目给定的式子算出y,每次取x+y的最小值即可答案为7020代码实现:#include<iostream>#include<algorithm>#include<cmath>usingnamespacestd;#defineintlonglongconstintN=1e4+5;signedmain(){ //记录答案......
  • 2023-06-03:redis中pipeline有什么好处,为什么要用 pipeline?
    2023-06-03:redis中pipeline有什么好处,为什么要用pipeline?答案2023-06-03:Redis客户端执行一条命令通常包括以下四个阶段:1.发送命令:客户端将要执行的命令发送到Redis服务器。2.命令排队:Redis服务器将收到的命令放入队列中,按照先进先出(FIFO)的原则等待执行。3.命令执行:当Redis服......
  • ABC215E 题解
    前言题目传送门!更好的阅读体验?萌萌DP题。思路题目就是在说从\(a\)里面按顺序掏出来一些字母,使得相同的字母都是相邻的(比如AABBBBCD可行,AAABBCAA不行)。看起来很不可做,突破口在于\(\text{A}\sim\text{J}\)一共只有\(10\)个字母,考虑状压。设\(dp_{i,s}\)表示......
  • 2023.6.3 自学kali渗透测试1
     首先sudosu进入根用户,然后msfconsole然后searchms_17_010 然后use0//使用0号模块 2.设置必选项 //require为yes的为必选项setRHOSTS[目的IP]    //前提是在同一局域网//*RHOSTS为targethost(s)代表你要攻击谁 setpayloadwindows/x64/meterperte......
  • cmd+ssh配置远程服务器Anaconda3_2023+pytorch
    一、上传Anaconda3到远程服务器注意:如果要将这个东西安装在anaconda3文件夹里的话,当前这个目录里不能有这个文件夹。(安的时候会自动创建) 二、安装Anaconda31.win+r快捷键打开cmd输入ssh 可以看到已经与服务器建立连接 2.输入ssh<用户名>@主机IP......
  • 道路翻修题解
    \(\mathcal{Description}\)给定一张无向图,为每条边定向,定义每个点的价值为出度与入度之差的绝对值,求最大价值和。对于\(40\%\)的数据,\(1\leqn,m\leq20\)。对于\(70\%\)的数据,\(1\leqn\leq17\)。对于\(90\%\)的数据,\(1\leqn\leq22\)。对于所有数据,\(1\leqn\leq25\)......
  • 2023-5-30 #57 想要把猜测去证实 却无法启齿
    上一篇博客堆的东西有点多,最近复习学考没啥时间写,就开篇新的!379EGOI2021D2T4DoubleMove套路题。将宣布看成连边,连通块不是树和基环树肯定不优。令\(f(G)\)为图\(G\)合法定向方案数,根据AngleBeats2.0的结论可知方案数是\(2^c\prodt_i\),其中\(c\)是基环树数量,\(t......
  • SSO2.0 10-20230529
                           ......