C++ 晨练方案

晨练方案
约翰的N头奶牛(1≤N≤100)站成一排。对于每一个1≤i≤N,从左往右数第i头奶牛的编号为i。约翰想到了一个新的奶牛晨练方案。他让她们重复以下包含两个步骤的过程K(1≤K≤10^9)次:

  1. 当前从左往右数在位置A1…A2 的奶牛序列反转她们的顺序(1≤A1<A2≤N)。

  2. 然后,在当前从左往右数在位置 B1…B2 的奶牛序列反转她们的顺序(1≤B1<B2≤N)。

当奶牛们重复这一过程K次后,请对每一个1≤i≤N输出从左往右数第i头奶牛的编号。

测试点性质:
· 测试点 2-3 满足K≤100。

· 测试点 4-13 没有额外限制。

输入格式
输入的第一行包含N和K。第二行包含A1和A2,第三行包含B1和B2。

输出格式
在第i行输出晨练结束时从左往右数第i头奶牛的编号。

输入/输出例子1
输入:

7 2

2 5

3 7

输出:

1

2

4

3

5

7

6

初始时,奶牛们的顺序从左往右为 [1,2,3,4,5,6,7]。在这一过程的第一步过后,顺序变为[1,5,4,3,2,6,7]。在这一过程的第二步过后,顺序变为 [1,5,7,6,2,3,4]。再重复这两个步骤各一次可以得到样例的输出,如下图↓:
在这里插入图片描述
再重复这两个步骤就可以得到结果了
废话不多说,上代码:

#include<bits/stdc++.h>
using namespace std;
int n,a[101
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值