题目:

n块积木,编号1到n,初始时,第i块放在第i个位置。现在,进行a b操作,每次操作把b位置积木全放到a位置上。输出操作完之后每个位置上的木块。
输入:n,m。n代表有n个积木,m代表有m个操作,接下来m行是m个操作。如果ab相等则本次不移动木块。
输出,每个位置从下到上积木编号,如果该位置没有积木,输出空行
样例输入:
2 2
1 2
1 2
样例输出:
1 2

样例输入:
4 4
3 1
4 3
2 4
2 2
样例输出:

2 4 3 1

分析与解答:

开二维数组回爆内存,所以用动态数组vector。
每次转移之后要清掉被转移的vector的内存。
具体就是先初始化,然后根据操作转移,清空内存,最后输出即可。

#include<iostream>
#include<cstdio>
#include<vector>
#include<algorithm>using namespace std;int main(){int n,m;cin>>n>>m;vector<int> c[10011];for(int i=1;i<=n;++i){c[i].push_back(i);}for(int i=1;i<=m;++i){int a,b;cin>>a>>b;if(a==b) continue;else{for(int j=0;j<c[b].size();++j){c[a].push_back(c[b][j]);}vector<int>().swap(c[b]); } }for(int i=1;i<=n;++i){for(int j=0;j<c[i].size();++j){if(j!=c[i].size()-1) cout<<c[i][j]<<' ';else cout<<c[i][j];}cout<<endl;}
}

(vector)堆积木相关推荐

  1. 堆积木(动态数组vector)

    1.问题描述: 2.算法分析: 这道题目开始看了好久都没看明白,其实题目大概意思是这样. 就是有一排容器,编号为 1,2,3\cdots n1,2,3⋯n,初始时编号为 i的容器有 编号为i的积木. ...

  2. 堆积木(基本数据结构-ArrayList数组的使用)

    蒜头君有 n 块积木,编号分别为 1 到 n.一开始,蒜头把第 i 块积木放在位置 i.蒜头君进行 m次操作,每次操作,蒜头把位置 b 上的积木整体移动到位置 a 上面. 比如 1 位置的积木是 1, ...

  3. echarts树点击label事件_ECharts 堆积木(砖块)游戏

    最近突发奇想,用 3D 的堆叠柱图,做了一个搭积木的小游戏. 主要思路 用一个几乎透明的 series-bar3D 铺满整个 grid3D,作为操作区,监听鼠标点击事件.完成堆积木的操作: 用多层数据 ...

  4. ps随机排列_漂亮!自然材料:人工可控微米级胶体粒子“堆积木”——粒子随心所欲的组装排列!...

    堆积木俨然已经成为了幼儿教育必备课程,通过堆积木可促进幼儿大脑发育.利用形状相同的基元可组装出各种不同结构,同时也可以通过不同基元之间的匹配组装更加新颖的结构.由于堆积木的组装灵活性,这一概念也被科研 ...

  5. echarts中树图的label的点击_ECharts 堆积木(砖块)游戏

    最近突发奇想,用 3D 的堆叠柱图,做了一个搭积木的小游戏. 主要思路 用一个几乎透明的 series-bar3D 铺满整个 grid3D,作为操作区,监听鼠标点击事件.完成堆积木的操作: 用多层数据 ...

  6. 春春幼儿园堆积木大赛_春云边车

    春春幼儿园堆积木大赛 我有一个部署到基于NetflixOSS的云的应用程序,该应用程序具有以下结构: 本质上是一种将信息持久保存到Cassandra集群的服务. 所有应用程序都已注册到Eureka – ...

  7. Android布局动态化,一种基于堆积木思想的卡片式Android动态布局方法与流程

    本发明涉及android界面布局,特别是一种基于堆积木思想的卡片式Android动态布局方法. 背景技术: 在Android流行的今天,android App在生活中使用日益广泛,相对PC,手机由于界 ...

  8. bzoj 1109: [POI2007]堆积木Klo(二维偏序)

    1109: [POI2007]堆积木Klo Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 1139  Solved: 423 [Submit][St ...

  9. 给初学编程的业余爱好者——会堆积木就会编程

    首先说明的是,这不是教材,只是看着一些拜师啊跪求啊等词眼不爽而堆的字,版权神马滴没有,能拿去骂人更好. 在计算机技术高度普及的21世纪,编程不再是像20世纪五六十年代那样只是身在高高神坛的家伙骗吃骗喝 ...

最新文章

  1. 15年第六届蓝桥杯第九题_(矩阵快速幂优化的动态规划)
  2. 置换怎么表示成轮换_开门红 新纪录!首场电车置换引爆州城,两小时突破160辆!...
  3. 风起云涌时,亦是光芒四射时 | LiveVideoStackCon 2020线上峰会日程全公开
  4. .NET Core 微信小程序退款——(统一退款)
  5. 表达爱意的程序_如何像程序员一样表达爱意❤️
  6. 动手学无人驾驶(4):基于激光雷达点云数据3D目标检测
  7. SpaceX 载人飞船首发成功!
  8. lt;转载自刘佳ID:freedom0203和waretgt; C++中成员初始化列表的使用
  9. Mybatis工作中常用动态SQL总结
  10. 查缺补漏知识点(一)
  11. DIY多快充协议太阳能充电器!----锂电池充电电路
  12. 心脏除颤器的工作原理
  13. 【SharePoint】你无权在SharePoint designer中打开此网站
  14. 解决Edge及Chrome等浏览器主页被篡改2345导航页
  15. Arduino应用开发——通过小爱同学控制灯光
  16. python做工控机_「上位机软件」工控机上位机软件的开发历程(一) - seo实验室...
  17. 知乎书籍排行网站——建站始末
  18. 简约生活的72条观念
  19. 决斗小游戏代码html,《游戏王:决斗链接》的基础玩法介绍
  20. matlab 定义函数 调用,matlab 定义函数,matlab定义函数并调用

热门文章

  1. css实现loading,CSS3实现18种Loading效果
  2. 【渝粤教育】电大中专电大中专职业生涯规划考试考核试题作业 题库
  3. 神经网络各个部分的作用 彻底理解神经网络
  4. 谈谈区块链:深入理解软硬分叉
  5. 物理学在计算机中的物理应用,物理学在计算机中的应用.doc
  6. uniapp获取支付宝user_id - 支付宝提现 - 登录授权 - APP支付宝登陆 - H5支付宝授权
  7. android手机执行shell脚本
  8. 【Leetcode刷题】:Python:416. 分割等和子集
  9. matlab噪声滤波分析,应用Matlab对含噪声语音信号进行频谱分析及滤波
  10. 震惊!!十五天开发出一款安卓打卡app,并且成功发布!