文章

82

粉丝

344

获赞

28

访问

698.3k

头像
不断Reverse()实现
P1366 吉林大学机试题
发布于2021年1月13日 12:34
阅读数 6.7k

#include <iostream>
#include <algorithm>
#include <cstdio> 
using namespace std;
int a[1001];
int n,k,x;
void init(int n){
    for(int i=1;i<=n;i++){
        a[i]=i;
    }
}
void reverse(int *a,int s,int e){
    while(s<e){
        swap(a[s],a[e]);
        s++;
        e--;
    }
}
void shift(int *a){
    reverse(a,1,x);
    reverse(a,x+1,n);
    reverse(a,1,n);
}
void flip(int *a){
    reverse(a,1,n/2);
}

int main(){
    while(scanf("%d %d",&n,&k)!=EOF){
        init(n);
        cin>>x;
    while(k--){
            shift(a);
&nbs...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发