2024 ccpc 辽宁省赛 E(构造 思维?)L(二分+一点点数论知识?)
E 题意:

可以注意到:
我的两种方格都四个方格的大小。
所以 如果存在一种摆放方式 那么 4|nm。
再考虑一种特殊的情况 22 ,此时虽然我的积是4 但是无法摆放的。
1>对于 4 | n,或者 4 | m.我直接摆放第二种方格就可以了。
如果我n 是4 的倍数,那么竖着摆放。如果m 是4 的倍数,那么横着摆。
2>对于我n m 都不是4 的倍数的情况。(因为4|nm ,并且我n m 都不是4的倍数。所以n m 都是偶数,(因为每一个数都要贡献出一个2 出来)
我们可以构造出来的最小单元是 26
1 2 2 2 2 3
1 1 1 3 3 3
当m>2的时候。我两行两行的考虑
m至少为6
将原矩阵分成2m 个矩形
当m 大于2 并且不是4的倍数。那么m=4k+6
对分割好的矩形 可以分割成k个24 的矩形和一个2 6的矩形。
当我的m==2 的时候
1 1
1 2
1 2
3 2
3 3
那么我n =4*k+6
和上文类似
我的构思代码
#include <bits/stdc++.h>
using namespace std;
typedef pair<int, int> PII;void fun1(int x)
{cout << x << " " << x + 1 << " " << x + 1 << " " << x + 1 << " " << x + 1 << " " << x + 2 << " ";return;
}
void fun2(int x)
{cout << x << " " << x << " " << x << " " << x + 2 << " " << x + 2 << " " << x + 2 << " ";return;
}
void fun3(int x)
{cout<<x<<" "<<x<<"\n";cout<<x<<" "<<x+1<<"\n";cout<<x<<" "<<x+1<<"\n";cout<<x+2<<" "<<x+1<<"\n";cout<<x+2<<" "<<x+1<<"\n";cout<<x+2<<" "<<x+2<<"\n";return ;
}
void solve()
{int n, m;cin >> n >> m;if (n == 2 && m == 2){cout << "NO\n";return;}if ((n * m) % 4 != 0){cout << "NO\n";return;}cout << "YES\n";if (n % 4 == 0 || m % 4 == 0){int tot = 0;if (m % 4 == 0){for (int j = 1; j <= n; j++){for (int k = 1; k <= m; k++){if (k % 4 == 1)tot++;cout << tot << " ";}cout << "\n";}}else{int tot = 1;for (int k = 1; k <= n / 4; k++){for (int jj = 1; jj <= 4; jj++){for (int i = tot; i <= tot + m - 1; i++){cout << i << " ";}cout << "\n";}tot += m;}}return;}int tot = 1;if (m==2){int k=(n-6)/4;fun3(tot);tot+=3;for (int i=1;i<=k;i++){for (int k=1;k<=4;k++){cout<<tot<<" "<<tot+1<<"\n";}tot+=2;}return ;}int k = (m - 6) / 4;for (int i = 1; i <= n; i += 2){int t = tot;// 两行 两行处理fun1(t);tot += 3;// 多少个四for (int j = 1; j <= k; j++){for (int kk = 1; kk <= 4; kk++)cout << tot << " ";tot++;}cout << "\n";fun2(t);for (int j = 1; j <= k; j++){for (int kk = 1; kk <= 4; kk++)cout << tot << " ";tot++;}cout << "\n";}
}
int main()
{std::cin.tie(nullptr)->sync_with_stdio(false);int t = 1;cin >> t;while (t--){solve();}return 0;
}
L题意:

一直以为这是什么数论的题。
说到底还是不会枚举啊。读不懂题。真可恶 真可恶!!
1-x 中 是a 的倍数的数字有 x/a 个。(这里我其实是算的 我的x是a 的多少倍。若x/a=k。那么从1-x 中 存在着 a 2a …ka 一共k 个数)
(主要是对这 一句的理解)
n 是4*100^p 的倍数 但是我n 不是 100^{p+1} 的倍数
如果我确定了p.那么我可以用 mid/a-mid/b;
同时要减去1-2024 年的影响。
我的平年 和我的年份 具有单调性。(不降的)
所以我二分年份
因为我的平年至多是1e18 。所以我的p 取到 8 就可以了。4100^p 已经到达了41e16
当我的p 取9 的时候,是 4*1e18,那必然不会出现倍数了
void solve()
{int k;cin >> k;auto check = [&](int mid) -> bool{int ans = 0;for (int i = 0; i <= 8; i++){ans += mid / (4 * qpow(100, i)) - mid / (qpow(100, i + 1));}return (mid - 2024 - (ans - 491)) >= k;};int l = 2025;int r = 2e18;while (l <= r){int mid = l + r >> 1;if (check(mid))r = mid - 1;elsel = mid + 1;}cout << r + 1 << "\n";
}
相关文章:
2024 ccpc 辽宁省赛 E(构造 思维?)L(二分+一点点数论知识?)
E 题意: 可以注意到: 我的两种方格都四个方格的大小。 所以 如果存在一种摆放方式 那么 4|nm。 再考虑一种特殊的情况 22 ,此时虽然我的积是4 但是无法摆放的。 1>对于 4 | n,或者 4 | m.我直接摆放第二种方格就可以了。 如果我n 是4 的…...
【iOS】设计模式的六大原则
【iOS】设计模式的六大原则 文章目录 【iOS】设计模式的六大原则前言开闭原则——OCP单一职能原则——SRP里氏替换原则——LSP依赖倒置原则——DLP接口隔离原则——ISP迪米特法则——LoD小结 前言 笔者这段时间看了一下有关于设计模式的七大原则,下面代码示例均为OC…...
网络安全:攻防技术-Google Hacking的实现及应用
前言 google hacking其实并算不上什么新东西,在早几年我在一些国外站点上就看见过相关的介绍,但是由于当时并没有重视这种技术,认为最多就只是用来找找未改名的mdb或者别人留下的webshell什么的,并无太大实际用途。但是前段时间仔…...
输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。-多语言
目录 C 语言实现 Python 实现 Java 实现 Js 实现 Ts 实现 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 程序分析:利用while语句,条件为输入的字符不为\n。 C 语言实现 #include <stdio.h>int mai…...
2-2-18-9 QNX系统架构之文件系统(三)
阅读前言 本文以QNX系统官方的文档英文原版资料为参考,翻译和逐句校对后,对QNX操作系统的相关概念进行了深度整理,旨在帮助想要了解QNX的读者及开发者可以快速阅读,而不必查看晦涩难懂的英文原文,这些文章将会作为一个…...
各大浏览器(如Chrome、Firefox、Edge、Safari)的对比
浏览器如Chrome、Firefox、Edge等在功能、性能、隐私保护等方面各有特点。以下是对这些浏览器的详细对比,帮助你选择合适的浏览器。 1. Google Chrome 市场份额:Chrome是目前市场上最流行的浏览器,约占全球浏览器市场的65%以上。 性能&#…...
nginx搭建直播推流服务
文章目录 学习链接步骤使用nginx搭建直播推流服务安装依赖库下载nginx-http-flv-module模块下载nginx解压nginx,进入nginx目录设置nginx编译配置编译并安装配置nginx rtmp服务启动nginx 准备另外一台电脑下载OBS下载OBS windows | linux 安装vlc观看直播flv协议hls协…...
单片机-- 松瀚sonix学习过程
硬件:松瀚sn8f5701sg、SN-LINK 3 Adapter模拟器、sn-link转接板 软件: keil-c51(v9.60):建立工程,编辑,烧录程序 SN-Link_Driver for Keil C51_V3.00.005:安装sonix设备包和snlin…...
循环神经网络:从基础到应用的深度解析
🍛循环神经网络(RNN)概述 循环神经网络(Recurrent Neural Network, RNN)是一种能够处理时序数据或序列数据的深度学习模型。不同于传统的前馈神经网络,RNN具有内存单元,能够捕捉序列中前后信息…...
从扩散模型开始的生成模型范式演变--SDE
SDE是在分数生成模型的基础上,将加噪过程扩展时连续、无限状态,使得扩散模型的正向、逆向过程通过SDE表示。在前文讲解DDPM后,本文主要讲解SDE扩散模型原理。本文内容主要来自B站Up主deep_thoughts分享视频Score Diffusion Model分数扩散模型…...
【python使用kazoo连ZooKeeper基础使用】
from kazoo.client import KazooClient, KazooState from kazoo.exceptions import NoNodeError,NodeExistsError,NotEmptyError import json# 创建 KazooClient 实例,连接到 ZooKeeper 服务器 zk KazooClient(hosts127.0.0.1:2181) zk.start()# 定义节点路径 path…...
【设计模式系列】解释器模式(十七)
一、什么是解释器模式 解释器模式(Interpreter Pattern)是一种行为型设计模式,它的核心思想是分离实现与解释执行。它用于定义语言的文法规则,并解释执行语言中的表达式。这种模式通常是将每个表达式抽象成一个类,并通…...
只出现一次的数字
只出现一次的数字 给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。 示例 1 ÿ…...
SpringMVC-08-json
8. Json 8.1. 什么是Json JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,目前使用特别广泛。采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。易于人阅读和编写…...
技术文档的语言表达
技术文档的语言表达 在这个瞬息万变的技术世界中,了解如何撰写有效的技术文档显得尤为重要。无论是开发团队还是最终用户,清晰、简洁且有条理的文档都是连接各方的桥梁。本文将深入探讨技术文档的语言表达,从其重要性、写作原则到各种类型&a…...
UEFI 事件
UEFI 不再支持中断(准确地说,UEFI 不再为开发者提供中断支持,但在UEFI内部还是使用了时钟中断),所有的异步操作都要通过事件(Event)来完成。 启动服务为开发者提供了用于操作事件、定时器及TPL…...
大师开讲-图形学领域顶级专家王锐开讲Vulkan、VSG开源引擎
王锐,毕业于清华大学,图形学领域顶级专家,开源技术社区的贡献者与推广者。三维引擎OpenSceneGraph的核心基石开发者与维护者,倾斜摄影数据格式osgb的发明人。著有《OpenSceneGraph 3 Cookbook》,《OpenSceneGraph 3 Beginers Guid…...
小F的矩阵值调整
问题描述 小F得到了一个矩阵。如果矩阵中某一个格子的值是偶数,则该值变为它的三倍;如果是奇数,则保持不变。小F想知道调整后的矩阵是什么样子的。 测试样例 样例1: 输入:a [[1, 2, 3], [4, 5, 6]] 输出:…...
ORB-SLAM2 ----- LocalMapping::SearchInNeighbors()
文章目录 一、函数意义二、函数讲解三、函数代码四、本函数使用的匹配方法ORBmatcher::Fuse()1. 函数讲解2. 函数代码 四、总结 一、函数意义 本函数是用于地图点融合的函数,前面的函数生成了新的地图点,但这些地图点可能在前面的关键帧中已经生成过了&a…...
给UE5优化一丢丢编辑器性能
背后的原理 先看FActorIterator的定义 /*** Actor iterator* Note that when Playing In Editor, this will find actors only in CurrentWorld*/ class FActorIterator : public TActorIteratorBase<FActorIterator> {//..... }找到基类TActorIteratorBase /*** Temp…...
css实现圆环展示百分比,根据值动态展示所占比例
代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...
1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
GitHub 趋势日报 (2025年06月08日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 884 cognee 566 dify 414 HumanSystemOptimization 414 omni-tools 321 note-gen …...
鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/
使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题:docker pull 失败 网络不同,需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...
实现弹窗随键盘上移居中
实现弹窗随键盘上移的核心思路 在Android中,可以通过监听键盘的显示和隐藏事件,动态调整弹窗的位置。关键点在于获取键盘高度,并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...
稳定币的深度剖析与展望
一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...
BLEU评分:机器翻译质量评估的黄金标准
BLEU评分:机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域,衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标,自2002年由IBM的Kishore Papineni等人提出以来,…...
【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信 BLE Mesh协议的拓扑结构 定向转发机制
目录 节点的功能承载层(GATT/Adv)局限性: 拓扑关系定向转发机制定向转发意义 CG 节点的功能 节点的功能由节点支持的特性和功能决定。所有节点都能够发送和接收网格消息。节点还可以选择支持一个或多个附加功能,如 Configuration …...
nnUNet V2修改网络——暴力替换网络为UNet++
更换前,要用nnUNet V2跑通所用数据集,证明nnUNet V2、数据集、运行环境等没有问题 阅读nnU-Net V2 的 U-Net结构,初步了解要修改的网络,知己知彼,修改起来才能游刃有余。 U-Net存在两个局限,一是网络的最佳深度因应用场景而异,这取决于任务的难度和可用于训练的标注数…...
