当前位置: 首页 > news >正文

每天一题:洛谷P2041分裂游戏

题目描述

有一个无限大的棋盘,棋盘左下角有一个大小为 n 的阶梯形区域,其中最左下角的那个格子里有一枚棋子。你每次可以把一枚棋子“分裂”成两枚棋子,分别放在原位置的上边一格和右边一格。(但如果目标位置已有棋子,则不能这样做)你的目的是通过有限次的操作,让整个阶梯里不再有任何棋子。下图所示的是 n=2 时的一种解法。

图片来源于洛谷

我们用从下往上数的方式标记行,从左往右数的方式标记列,以 (行,列) 来标记棋子,并且都从 1 开始。

例如,第三步中的三个棋子坐标分别为 (3,1),(2,2),(1,2)。

现在已知 n,你需要做的是给出合适的操作序列。

输入格式

输入一个正整数 n。

输出格式

如果有解,第一行应包含一个正整数 m,表示总共需要的操作步数。

以下 m 行,每行包括两个正整数 xi,yi,表示第 iii 步操作分裂的是处于第 xi​ 行第 yi 列的棋子。

如果无解,只需在第一行输出 −1。

输入输出样例

输入 #1

1

输出 #1

1
1 1

输入 #2

2

输出 #2

4
1 1
2 1
2 2
1 2

说明/提示

  • 对于 40% 的数据:n≤8;
  • 对于 100% 的数据:n≤1000。

解题方法

我刚开始看见标签时就猜到这是一道找规律题(标签为数学)(长这样的题除了找规律以外没别的可能),所以就直接手动模拟了第n为3时的情况,结果发现怎么都分不出来,总有一些棋子挡住了分裂,各个棋子互相牵制,怎么也分不下去了(QWQ手动尝试了半天),既然n为3都分不下去,那n更大自然也分不下去辣。

代码

是人都打的出这段代码八~

还是提供代码比就好hhh

#include<bits/stdc++.h>
using namespace std;int main(){int n;cin>>n;if(n==1){cout<<1<<endl<<1<<" "<<1;}else if(n==2){cout<<4<<endl<<1<<" "<<1<<endl<<2<<" "<<1<<endl<<2<<" "<<2<<endl<<1<<" "<<2;}else{cout<<"-1";}return 0;
}

哎嗨结束咯

相关文章:

每天一题:洛谷P2041分裂游戏

题目描述 有一个无限大的棋盘&#xff0c;棋盘左下角有一个大小为 n 的阶梯形区域&#xff0c;其中最左下角的那个格子里有一枚棋子。你每次可以把一枚棋子“分裂”成两枚棋子&#xff0c;分别放在原位置的上边一格和右边一格。&#xff08;但如果目标位置已有棋子&#xff0c…...

简单的 curl HTTP的POSTGET请求以及ip port连通性测试

简单的 curl HTTP的POST&GET请求以及ip port连通性测试 1. 需求 我们公司有一个演示项目&#xff0c;需要到客户那边进行项目部署&#xff0c;项目部署完成后我们需要进行项目后端接口的测试功能&#xff0c;但是由于客户那边么有条件安装类似于postman这种的测试工具&am…...

ubuntu下快捷键启动程序

背景&#xff1a;公司自开发的软件&#xff0c;经常需要启动&#xff0c;每次去找目录启动很麻烦&#xff0c;所以想快捷启动 方法1&#xff1a; 通过编辑.baserc启动 例如启动程序是toolA, 放在/home/user/software/目录下&#xff0c;那么在~/.baserc里面加入一行代码 al…...

Yii2 init 初始化脚本分析

脚本目的&#xff1a; init 脚本主要的作用是&#xff1a;从 environments 目录中复制配置文件&#xff0c;确保应用适配不同环境&#xff08;例如开发、生产环境等&#xff09;。 工作流程&#xff1a; 获取 $_SERVER 的 argv 参数 加载 environments/index.php 文件&#…...

深入理解gPTP时间同步过程

泛化精确时间协议(gPTP)是一个用于实现精确时间同步的协议,特别适用于分布式系统中需要高度协调的操作,比如汽车电子、工业自动化等。 gPTP通过同步主节点(Time Master)和从节点(Time Slave)的时钟,实现全局一致的时间参考。 以下是gPTP实现主从时间同步的详细过程:…...

基于阿里云服务的移动应用日志管理方案—日志的上传、下载、存档等

前言 如题&#xff0c;基于阿里云服务&#xff08;ECS、OSS&#xff09;实现 APP 的用户日志上传以及日志下载的功能&#xff0c;提高用户反馈问题到研发去分析、定位、解决问题的整个工作流的效率。 术语 ECS: 云服务器ECS&#xff08;Elastic Compute Service&#xff09;…...

Python浪漫之画星星

效果图&#xff08;动态的哦&#xff01;&#xff09;&#xff1a; 完整代码&#xff08;上教程&#xff09;&#xff1a; import turtle import random import time # 导入time模块# 创建一个画布 screen turtle.Screen() screen.bgcolor("red")# 创建一个海龟&a…...

Android使用协程实现自定义Toast弹框

Android使用协程实现自定义Toast弹框 ​ 最近有个消息提示需要显示10s,刚开始使用协程写了一个shoowToast方法&#xff0c;传入消息内容、显示时间和toast显示类型即可&#xff0c;以为能满足需求&#xff0c;结果测试说只有5s&#xff0c;查看日志和源码发现Android系统中Toa…...

git diff命令详解

git diff 是 Git 中非常常用的命令&#xff0c;用于比较不同版本的文件改动。可以比较工作区、暂存区、或者提交之间的差异。下面是对 git diff 常用场景的详细解释&#xff1a; 1. git diff 当你执行 git diff 时&#xff0c;它会显示工作区与暂存区之间的差异&#xff0c;也…...

Vue 插槽:组件通信的“隐形通道”

在 Vue 中&#xff0c;插槽&#xff08;slot&#xff09;是实现组件内容分发的机制&#xff0c;允许我们将子组件的内容传递给父组件&#xff0c;从而提升组件的可复用性和灵活性。插槽的本质是通过将父组件内容传递到子组件指定的插槽位置&#xff0c;使得子组件在渲染时可以动…...

react1816中的setState同步还是异步的深层分析

setState 是 react 中更新 UI 的唯一方法&#xff0c;其内部实现原理如下&#xff1a; 调用 setState 函数时&#xff0c;React 将传入的参数对象加入到组件的更新队列中。React 会调度一次更新&#xff08;reconciliation&#xff09;&#xff0c;在调度过程中&#xff0c;Re…...

【UE5】将2D切片图渲染为体积纹理,最终实现使用RT实时绘制体积纹理【第七篇-体积纹理绘制】

我们前几篇已经完成了渲染部分&#xff0c;现在终于开始做动态绘制功能了 之前使用的是这样一个体积雾的切片图&#xff0c;那么现在要做的就是动态编辑它 首先&#xff0c;让我们简单了解一下它是如何运作的&#xff1a; 开始绘制画布以渲染目标&#xff0c;并将材质绘制到画…...

Linux的环境搭建

目录 1、linux的简单介绍 2、搭建linux环境 2.1 linux的环境安装 2.2 使用Xshell远程登入linux 2.2.1 Xshell免密登入 2.3 windows与Xshell与linux云服务器的关系 1、linux的简单介绍 linux操作系统 为 部分汇编 C语言编写 的操作系统 源代码公开(开源)&#xff0c;官…...

WPF+Mvvm案例实战(五)- 自定义雷达图实现

文章目录 1、项目准备1、创建文件2、用户控件库 2、功能实现1、用户控件库1、控件样式实现2、数据模型实现 2、应用程序代码实现1.UI层代码实现2、数据后台代码实现3、主界面菜单添加1、后台按钮方法改造&#xff1a;2、按钮添加&#xff1a;3、依赖注入 3、运行效果4、源代码获…...

网络爬虫-Python网络爬虫和C#网络爬虫

爬虫是一种从互联网抓取数据信息的自动化程序&#xff0c;通过 HTTP 协议向网站发送请求&#xff0c;获取网页内容&#xff0c;并通过分析网页内容来抓取和存储网页数据。爬虫可以在抓取过程中进行各种异常处理、错误重试等操作&#xff0c;确保爬取持续高效地运行 1、Python网…...

如何有效解除TikTok账号间的IP关联

在当今社交媒体环境中&#xff0c;TikTok凭借其独特的短视频形式吸引了数以亿计的用户。对许多内容创作者而言&#xff0c;运营多个账号是获取更大曝光和丰富内容的有效策略。然而&#xff0c;如何避免这些账号之间的IP关联&#xff0c;以防止被平台识别并封禁&#xff0c;成为…...

Python自省机制

Python 自省机制 Python 自省&#xff08;Introspection&#xff09;是一种动态检查对象的能力&#xff0c;使得开发者可以在运行时获取对象的相关信息&#xff0c;比如属性、方法、类型等。自省机制让 Python 具备了更强的动态性和灵活性&#xff0c;便于调试和开发。 自省&…...

wgan-gp 对连续变量 训练,6万条数据,训练结果不错,但是到局部的时候,拟合不好,是否可以对局部数据也进行计算呢

Wasserstein GAN with Gradient Penalty (WGAN-GP) 是一种改进的生成对抗网络&#xff08;GAN&#xff09;&#xff0c;它通过引入梯度惩罚来改进训练过程&#xff0c;从而提高生成模型的稳定性和质量。如果你在使用WGAN-GP对连续变量进行训练时&#xff0c;发现整体训练结果不…...

python 制作 发货单 (生成 html, pdf)

起因&#xff0c; 目的: 某个小店&#xff0c;想做个发货单。 过程: 先写一个 html 模板。准备数据&#xff0c; 一般是从数据库读取&#xff0c;也可以是 json 格式&#xff0c;或是 python 字典。总之&#xff0c;是数据内容。使用 jinja2 来渲染模板。最终的结果可以是 h…...

GeoWebCache1.26调用ArcGIS切片

常用网址&#xff1a; GeoServer GeoWebCache (osgeo.org) GeoServer 用户手册 — GeoServer 2.20.x 用户手册 一、版本需要适配&#xff1a;Geoserver与GeoWebCache、jdk等的版本适配对照 ​ 查看来源 二、准备工作 1、数据&#xff1a;Arcgis标准的切片&#xff0c;通过…...

Keil MDK-ARM中map文件解析与内存管理

Keil MDK-ARM中map文件全面解析1. 项目概述在嵌入式系统开发过程中&#xff0c;内存管理是至关重要的环节。map文件作为编译链接过程中生成的中间文件&#xff0c;包含了程序内存布局的完整映射信息。对于使用Keil MDK-ARM开发环境的工程师而言&#xff0c;深入理解map文件的结…...

终极指南:掌握Starlight文档导航自定义排序的7个高级技巧

终极指南&#xff1a;掌握Starlight文档导航自定义排序的7个高级技巧 【免费下载链接】starlight &#x1f31f; Build beautiful, accessible, high-performance documentation websites with Astro 项目地址: https://gitcode.com/gh_mirrors/st/starlight Starlight是…...

掌握8个wxappUnpacker实战技巧:小程序解包与代码还原完全指南

掌握8个wxappUnpacker实战技巧&#xff1a;小程序解包与代码还原完全指南 【免费下载链接】wxappUnpacker 项目地址: https://gitcode.com/gh_mirrors/wxappu/wxappUnpacker 为什么90%的小程序开发者都需要解包工具&#xff1f; 在小程序开发过程中&#xff0c;开发者…...

PyTorch分布式训练:原理与实践

PyTorch分布式训练&#xff1a;原理与实践 1. 背景与意义 随着深度学习模型的不断增大和数据集规模的持续增长&#xff0c;单GPU训练已经无法满足需求。分布式训练成为训练大型模型的必要手段&#xff0c;它可以显著缩短训练时间&#xff0c;提高模型性能。PyTorch提供了强大的…...

别再死记硬背了!用5分钟搞懂NPN和PNP三极管的电流流向(附快速判断技巧)

5分钟掌握NPN与PNP三极管的电流奥秘&#xff1a;从生活场景到实战技巧 记得第一次拆解收音机时&#xff0c;那些黑色的小方块上延伸出的金属腿让我一头雾水——它们看起来平平无奇&#xff0c;却能控制电流的放大与开关。直到导师用浇花的水管作比喻&#xff0c;三极管的秘密才…...

突破式3步实现:用MOOTDX构建零成本金融数据获取引擎

突破式3步实现&#xff1a;用MOOTDX构建零成本金融数据获取引擎 【免费下载链接】mootdx 通达信数据读取的一个简便使用封装 项目地址: https://gitcode.com/GitHub_Trending/mo/mootdx 在金融数据分析领域&#xff0c;数据获取一直是从业者面临的核心挑战。无论是量化交…...

从零到一:UniApp前端网页托管与自定义域名配置实战指南

1. 从零开始&#xff1a;UniApp前端网页托管全流程解析 第一次接触UniApp前端网页托管时&#xff0c;我也被各种专业术语搞得晕头转向。经过几个项目的实战&#xff0c;我发现这套流程其实就像租房子&#xff1a;你得先有个门牌号&#xff08;域名&#xff09;&#xff0c;再找…...

金仓V9智能运维揭秘:如何用国产数据库实现分钟级部署与自动化备份

金仓V9智能运维实战&#xff1a;从分钟级部署到自动化备份的全流程解析 在数字化转型浪潮中&#xff0c;数据库作为企业核心基础设施&#xff0c;其运维效率直接影响业务连续性。金仓数据库V9全平台版凭借智能运维体系&#xff0c;正在重新定义国产数据库的管理标准。本文将深入…...

如何快速掌握Sionna:下一代无线通信仿真的终极指南

如何快速掌握Sionna&#xff1a;下一代无线通信仿真的终极指南 【免费下载链接】sionna Sionna: An Open-Source Library for Next-Generation Physical Layer Research 项目地址: https://gitcode.com/gh_mirrors/si/sionna Sionna是一个基于TensorFlow的开源Python库&…...

计算机毕设 java 基于 HTML5 的酒店预订管理系统 java 基于 HTML5 的智能酒店预订系统 java 基于 HTML5 的酒店在线预订管理平台

计算机毕设 java 基于 HTML5 的酒店预订管理系统 4u2r79&#xff08;配套有源码 程序 mysql 数据库 论文&#xff09;本套源码可以先看具体功能演示视频领取&#xff0c;文末有联 xi 可分享在互联网和移动互联网飞速发展的当下&#xff0c;线上预订已成为酒店行业的主流消费模式…...