[蓝桥双周赛]铺地砖

2023-11-06 10:50
文章标签 蓝桥 双周 铺地砖

本文主要是介绍[蓝桥双周赛]铺地砖,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

题目描述

小蓝家要装修了,小蓝爸爸买来了很多块(你可以理解为数量无限)2×3规格的地砖,小蓝家的地板是n × m规格的,小蓝想问你,能否用这些2×3的地砖铺满地板。

铺满地板:对于地板的每个区域,都有且只有一块地砖覆盖,地砖可以旋转,但不能切割。

例如:对于7×6的地板,一种铺地板方式是:

当然,也存在其他别的铺法。

小蓝家是个多层小别墅,每一层的规格不一样,所以他会多次询问你不同规格的地板。

输入格式

第一行输入一个整数T,代表询问数量。

接下来T行,每行两个正整数ni, mi,代表小蓝询问的地板规格。

输出格式

对于每次询问,如果2×3的地砖可以铺满地板,输出Yes,否则输No。

输入样例

在这里给出一组输入。例如:

4
7 6
2 2
12 8
1 12

输出样例

在这里给出相应的输出。例如:

Yes
No
Yes
No

这道题目考察了数论,如果不会的话写暴力如果数据点比较强很有可能过不了

刚开始写了个搜索判断能不能由2,3组成,但是不知道为什么搜索过不了qwq

数论结论是对于两个互质的数a,b,存在的最大的不能由这两个数组合出来的整数是

a*b-a-b

 对于地板的两条边来说,只要其的边长可以由a,b自由组合出来,那么其就可能存在满足条件的摆法。

最终答案就是上面的条件满足外额外满足地板面积是地砖面积的整数倍即可

#include <bits/stdc++.h>using namespace std;typedef long long int ll;
#define endl "\n"
#define maxLine 110
#define long long int ll;ll splitA=2;
ll splitB=3;ll calc(ll a,ll b){// 计算最大的不能表示的数字return a*b-a-b;
}
int main() {int n;cin>>n;int a,b;int nums=calc(splitA,splitB);for(int i=1; i<=n; i++){cin>>a>>b;if (((a*b)%(splitA*splitB)==0) && (a>nums) && (b>nums) ){cout<<"Yes";}else {cout<<"No";}cout<<endl;}return 0;
}

这里面注意,取模符号(%)和乘除符号具有相同的优先级,所以在除法运算的结果取模的时候注意使用括号!

加油吧,算法真的垃圾的要死

这篇关于[蓝桥双周赛]铺地砖的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/356170

相关文章

C语言蓝桥杯

一、语言基础 竞赛常用库函数 最值查询 min_element和max_element在vector(迭代器的使用) nth_element函数的使用 例题lanqiao OJ 497成绩分析 第一种用min_element和max_element函数的写法 第二种用min和max的写法 二分查找 二分查找只能对数组操作 binary_s

找不同-第15届蓝桥省赛Scratch初级组真题第4题

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第183讲。 如果想持续关注Scratch蓝桥真题解读,可以点击《Scratch蓝桥杯历年真题》并订阅合集,查阅教程更方便。 第15届蓝桥杯省赛已于2024年8月24日落下帷幕,编程题一共有5题,分别如下: 猪八戒落地 游乐场 画西瓜 找不同 消

【蓝桥杯嵌入式(一)程序框架和调度器】

蓝桥杯嵌入式(一)程序框架和调度器 序、代码命名规则零、STM32和8051⼀、软件及环境安装⼆、⼯程框架搭建1.时钟配置2、SYS配置3、⼯程配置4、NVIC配置5.、Keil配置 三、系统初始化四、任务调度器 链接: 视频出处 序、代码命名规则 以下是一些常见的举例 零、STM32和8051 链接: 8位和32位单片机最本质区别 ⼀、软件及环境安装

【蓝桥杯嵌入式(二)Led、Key、Lcd】

蓝桥杯嵌入式(二)Led、Key、Lcd 五、Led模块1.原理图配置2. 知识点3.底层代码 六、Key模块1.原理图配置2.知识点3.底层代码底层代码(四⾏代码版本)底层代码(状态机版本) 七、LCD模块1.原理图配置2.知识点底层代码 五、Led模块 1.原理图配置 2. 知识点 链接: 上拉电阻的通俗解释 链接: 单⽚机怎么输出⾼电平!推挽输出和开

蓝桥杯:整数删除

// 蓝桥杯整数删除.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include<stdio.h>#define MAX 100void findmin(int a[],int n,int& pos){int min=a[0];pos=0;//pos=0我开始忘了,特别注意

第十五届蓝桥杯图形化省赛题目及解析

第十五届蓝桥杯图形化省赛题目及解析 一. 单选题 1. 运行以下程序,角色会说( )? A、29     B、31     C、33     D、35 正确答案:C 答案解析: 重复执行直到m>n不成立,即重复执行直到m<=n。所有当m小于或者 等于n时,循环结束。循环过程中变量m与变量n的变化如下表: 通过上述表格可知,循环到第五次循环结束。m的值为14,n的值为19

第八届蓝桥杯 最大公共子串(动态规划)

标题:最大公共子串 最大公共子串长度问题就是: 求两个串的所有子串中能够匹配上的最大长度是多少。 比如:"abcdkkk" 和 "baabcdadabc", 可以找到的最长的公共子串是"abcd",所以最大公共子串长度为4。 下面的程序是采用矩阵法进行求解的,这对串的规模不大的情况还是比较有效的解法。 请分析该解法的思路,并补全划线部分缺失的代码。 #include <stdio.h

蓝桥杯第八届 方格分割(dfs)

标题:方格分割6x6的方格,沿着格子的边线剪开成两部分。要求这两部分的形状完全相同。如图:p1.png, p2.png, p3.png 就是可行的分割法。试计算:包括这3种分法在内,一共有多少种不同的分割方法。注意:旋转对称的属于同一种分割法。请提交该整数,不要填写任何多余的内容或说明文字。   观察可得他是一个中心对称图形,我们只需要搜索它的对称线即可。我们可以把对称线抽象为从(

Leetcode - 138双周赛

目录 一,3270. 求出数字答案 二,3271. 哈希分割字符串 三,3272. 统计好整数的数目 四,3273. 对 Bob 造成的最少伤害 一,3270. 求出数字答案 本题数据范围小,可以将数字转换成字符串来做,这里教一种更省空间的做法。我们可以从后往前求出每一个数位的最小值min(a % 10, b  % 10,c % 10),a /= 10,b /= 10,c

蓝桥杯备赛day02:递推

斐波那契数列 #include <bits/stdc++.h>using namespace std;int main(){int n;cin>>n;int dp[n+1];dp[1]=1;dp[2]=1;for(int i = 3;i <= n;i++) dp[i] = dp[i-1]+dp[i-2];cout<<dp[n];return 0;} n = int(input())