您的位置:首页 > 财经 > 产业 > 乐山旅游英文网站建设_中国企业排名100强_做一个私人网站需要多少钱_长沙网络营销哪家平台专业

乐山旅游英文网站建设_中国企业排名100强_做一个私人网站需要多少钱_长沙网络营销哪家平台专业

2025/5/20 14:40:04 来源:https://blog.csdn.net/yooooozzhhh/article/details/147077707  浏览:    关键词:乐山旅游英文网站建设_中国企业排名100强_做一个私人网站需要多少钱_长沙网络营销哪家平台专业
乐山旅游英文网站建设_中国企业排名100强_做一个私人网站需要多少钱_长沙网络营销哪家平台专业

Dashboard - Codeforces Round 1011 (Div. 2) - Codeforces

Problem - B - Codeforces

题目大意:

给你一个数组,你可以用一段子序列中没有出现的最小非负整数,替换数组中的组序列,经过若干操作,让数组变为长度为1,值为0。

方法:

题目没用让我们找到最佳操作,所有就按最简单的来,我就不断找0,找到0,如果他是倒数第一个,我就删除数组倒数2个数,然后插入1(不用替换为未出现最小的整数,太麻烦)

如果不是,就删除0和后面一个数,插入1;

来看代码:

#include<bits/stdc++.h>
using namespace std;
int main()
{int t;cin>>t;while(t--){int n;cin>>n;vector<int>arr(n);vector<int>zero(0);vector<int>brr(0);for(int i = 0;i<n;i++){cin>>arr[i];}while(1){int flag = 0;for(int i = 0;i<arr.size();i++){if(arr[i]==0){flag = 1;//如果是最后一个,就向前处理 if(i==arr.size()-1){arr.erase(arr.end() - 2, arr.end());arr.push_back(1);brr.push_back(arr.size());brr.push_back(arr.size()+1);}else//统一向后处理 {arr.erase(arr.begin()+i,arr.begin()+i+2);arr.insert(arr.begin()+i,1);brr.push_back(i+1);brr.push_back(i+2);}}}if(flag ==0){break;}}int ok = 0;cout<<brr.size()/2+1<<endl;for(int i = 0;i<brr.size();i++){ok++;cout<<brr[i]<<" ";if(ok%2==0)cout<<endl;}cout<<1<<" "<<arr.size()<<endl;}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com