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

打卡信奥刷题(2535)用C++实现信奥 P2041 分裂游戏

P2041 分裂游戏

题目描述

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

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

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

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

输入格式

输入一个正整数nnn

输出格式

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

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

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

输入输出样例 #1

输入 #1

1

输出 #1

1 1 1

输入输出样例 #2

输入 #2

2

输出 #2

4 1 1 2 1 2 2 1 2

说明/提示

  • 对于40%40\%40%的数据:n≤8n \leq 8n8
  • 对于100%100\%100%的数据:n≤1000n \leq 1000n1000

C++实现

#include<bits/stdc++.h>usingnamespacestd;intmain(){intn;cin>>n;if(n==1){cout<<1<<endl;cout<<1<<" "<<1<<endl;}elseif(n==2){cout<<4<<endl;cout<<1<<" "<<1<<endl;cout<<2<<" "<<1<<endl;cout<<2<<" "<<2<<endl;cout<<1<<" "<<2<<endl;}else{cout<<-1<<endl;}return0;}

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容

http://www.cnnetsun.cn/news/50083.html

相关文章:

  • 突破性音频AI技术:Step-Audio 2系列重塑智能语音交互新范式
  • 基于vue的家政服务管理系统_37cw9ju0_springboot php python nodejs
  • 《零基础学 PHP:从入门到实战》·PHP编程精进之路:掌握高级特性与实战技巧-1
  • Step-Audio 2:重新定义人机语音交互的技术革命
  • AutoGPT与Stable Diffusion联用:图文内容协同生成新玩法
  • NetSonar:3分钟快速掌握的网络诊断终极方案
  • 46、PHP 基础函数与操作全解析
  • 52、Linux系统性能优化与命令行操作指南
  • 53、Linux 命令行与软件管理全攻略
  • 61、Ubuntu和Linux互联网资源指南
  • OpenPLC Editor开源工具在工业自动化领域的应用实践
  • ACL实验:ACL控制Telnet与Ping权限
  • 7、Linux 进程管理与操作详解
  • 学Simulink——移动机器人导航场景实例:基于Simulink的BLDC阿克曼转向Stanley算法路径跟踪仿真
  • Linux内存管理优化实战:系统性能提升完整指南
  • 如何在5分钟内用HandyControl搭建WPF视频播放器界面
  • 个人作品集网站终极指南:零基础打造专业简历展示平台
  • 小参数GPT训练数据预处理实战:从混乱数据到高质量语料
  • 终极无审查AI助手:Dolphin-Mistral-24B-Venice-Edition完全使用指南
  • 【C++入门必备】最详细入门教程(3)
  • iOS功能开关完整指南:从入门到精通的终极实践
  • Step-Audio 2 mini:开源语音大模型如何让中小企业AI部署成本锐减80%?
  • Flutter桌面交互优化:3个提升用户体验的关键技巧
  • 快速免费完整迁移:从动态博客到极速静态站点的终极指南
  • 58、Ubuntu系统工具、测试与Perl编程全解析
  • 60、Perl与PHP编程实用指南
  • 69、Ubuntu与Linux互联网资源全解析
  • 14、Ubuntu实用软件探索与使用指南
  • 18、Ubuntu服务器安装与管理全解析
  • 19、Ubuntu 服务器包管理全解析