推箱子
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
背景
半仙有很多箱子,堆放在若干个仓库中,现在半仙要整理仓库。
描述
给定每个仓库中箱子个数,和半仙希望每个仓库箱子个数,半仙可以将一个仓库中的箱子移到另一个仓库中,因为半仙喜欢一半,所以每次只会将某个仓库中一半的箱子给另一个仓库。
半仙认为如果一个仓库中现在有k个箱子,如果k是奇数,那么这个仓库的一半的箱子有个,如果k是偶数,则有个.
你需要给半仙一种移动方法,来达到半仙的目标。
格式
输入
- 第一行有两个整数,n和k,分别表示仓库个数和你可以做多少次移动箱子的操作。
- 接下来一行,有n个整数,,分别表示现在第i个仓库里箱子个数。 最后一行,有n个整数,,分别表示进行移动箱子的操作后,第i个仓库的箱子个数。
- 输入数据保证有解
输出
- 第一行,第一行包含一个整数op,表示操作次数。 接下来op行,有两个整数a,b。表示把a仓库中一半的箱子移到b仓库。
- 你需要保证,
- 如果有多组满足条件的移动方法,输出任意一种。
样例
4 100
1 1 1 1
2 0 2 0
2
2 1
4 3
2 100
4 5
5 4
4
2 1
1 2
1 2
2 1
数据范围
测试点编号 | 特殊限制 | |||
---|---|---|---|---|
A | ||||
特殊性质A:
提示
本题要输出操作次数。
本题数据较大,请用快速的输入,输出方式。