栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

Codeforces Round #767 (Div. 2)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Codeforces Round #767 (Div. 2)

Codeforces Round #767 (Div. 2)

(solve AB 至此一周六场div.2 赛时一道C题也没有做出来 QAQ!!!)

比赛链接: https://codeforces.com/contest/1629

C题 题目大意

给出一个数组,将数组任意分段,各段的MEX组成一个新串,问字典序最大的新串

题解

统计各数出现的次数存放在cnt数组,可以从cnt数组确定当前的最大mex,然后将原数组指针移动到满足此mex的位置,重复直到原数组指针移出

#include 
//#define int long long
using namespace std;
void solve();
signed main(){
	ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
//	freopen("in.txt","r",stdin);
	
	int t;cin>>t;
	while(t--)solve();
	#define _ 0
	return ~~(0^_^0);
}
void solve(){
	int n;cin>>n;
	vector a(n);
	vector cnt(n+1);
	for(int i=0;i>a[i];
		cnt[a[i]]++;
	}
	vector res;
	int i=0;
	while(i tmp(mex);
		int _mex=0;
		while(i 
D题 
题目大意 

给出长度为n的字符串数组(各字符串长度<=3),问是否有子序列构成回文串

题解

可以先判断各字符串本身是否回文串 和 是否存在完全和自己相反的串

剩下的情况就只有长度为 2+3 和 3+2的串

2+3 可以将2后面拼上所有字符放入set

3+2可以将2前面拼上所有字符进行判断

(做题时犯了一个错误是将长度为3的串的前两个字符组成的字串放入了set,这样会导致本来是"abX" "Xba"形式的两个串匹配成回文串 具体地,它们可能是 abc dbc,但是被判断成了回文串)

#include 
//#define int long long
using namespace std;
void solve();
string _reverse(string s);
signed main(){
	ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
//	freopen("in.txt","r",stdin);
	
	int t;cin>>t;
	while(t--)solve();
	#define _ 0
	return ~~(0^_^0);
}
void solve(){
	int n;cin>>n;
	vector a(n);
	for(int i=0;i>a[i];
	set st;
	int yes=0;
	for(int i=0;i
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/717112.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号