2 条题解

  • 0

    简单,reverse函数的使用,代码:

    #include<bits/stdc++.h>
    using namespace std;
    int main(){
    	vector<int> v;
    	int n,t,k,a,b;
    	cin>>n>>t;
    	for(int i=0;i<n;i++){
    		cin>>k;
    		v.push_back(k);
    	}
        for(int i=0;i<t;i++){
        	cin>>a>>b;
        	reverse(v.begin()+a-1,v.begin()+b);
    	}
    	for(int i=0;i<n;i++){
    		cout<<v[i]<<" ";
    	}
    	return 0;
    }
    
    • 0
      @ 2024-3-2 13:18:47

      #include<bits/stdc++.h> using namespace std; int n,m,x,y; int a[1001]; int main() { scanf("%d%d",&n,&m); for(int i=0;i<n;i++) scanf("%d",&a[i]); for(int i=1;i<=m;i++) { scanf("%d%d",&x,&y); reverse(a+x-1,a+y); } for(int i=0;i<n;i++) printf("%d ",a[i]); }

      • 1

      信息

      ID
      236
      时间
      1000ms
      内存
      256MiB
      难度
      4
      标签
      递交数
      20
      已通过
      18
      上传者