首页 > 其他分享 >Educational Codeforces Round 155 (Rated for Div. 2)

Educational Codeforces Round 155 (Rated for Div. 2)

时间:2023-09-25 11:44:06浏览次数:40  
标签:Educational Rated 155 int ll long solve return const

比赛链接

A. Rigged!

题目链接
就是一个比较简单的模拟就可以解决,如何判断能不能第一只需要考虑比他力量大的耐力是不是也比他大就行,而只要比他大,他就不可能第一,否则输出他的力量作为标杆就行,这样也可以避免比他力量小的也可以举起来。

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=110;
struct node
{
	int s,e;

}a[N];
bool cmp(node a,node b){
	if(a.s==b.s){
		return a.e>b.e;
	}
	return a.s>b.s;
}
void solve(){
	int n;
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>a[i].s>>a[i].e;
	}
	int s1=a[1].s;
	int e1=a[1].e;
	sort(a+2,a+n+1,cmp);
	for(int i=2;i<=n;i++){
		if(a[i].s>=s1){
			if(a[i].e>=e1){
				cout<<-1<<endl;
				return ;
			}
		}
		else{
			break;
		}
	}
	cout<<s1<<endl;
	return ;
}
int main(){
	int t;
	cin>>t;
	while(t--){
		solve();
	}
	return 0;
}

B. Chips on the Board

题目链接
有点像最优策略问题,因为我们要保证n * n的图全部覆盖,我们优先考虑的一定是数值最少的那一行或者那一列,因此我们可以都判断一下,最后直接输出他俩的最小值就是最优情况。

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=3e5+10;
void solve(){
	int n;
	cin>>n;
	ll minn1=1e9;
	ll minn2=1e9;
	ll s1=0;
	ll s2=0;
	for(int i=1;i<=n;i++){
		ll x;
		cin>>x;
		minn1=min(minn1,x);
		s1+=x;

	}
	for(int i=1;i<=n;i++){
		ll x;
		cin>>x;
		minn2=min(minn2,x);
		s2+=x;
	}
	cout<<min(1ll*minn1*n+s2,1ll*minn2*n+s1)<<endl;
	
}
int main(){
	int t;
	cin>>t;
	while(t--){
		solve();
	}
	return 0;
}

C. Make it Alternating

题目链接
找到一段连续相同的字符串,假设长度为x,我们就需要删除x-1个字符,但是我们有x种,也就是说保留的位置不同就是一段不同的序列。

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=3e5+10;
const int mod=998244353;

void solve(){
	string s;
	cin>>s;
	ll cnt=0;
	ll ans=1;
	for(int i=0;i<s.size();){
		int j=i+1;
		while(j<s.size()&&s[j]==s[i]){
			j++;
		}
		ll len=j-i;
		cnt+=len-1;
		ans=1ll*ans*len%mod;
		i=j;
	}
	for(int i=1;i<=cnt;i++){
		ans=1ll*ans*i%mod;

	}
	cout<<cnt<<" "<<ans<<endl;
	
}
int main(){
	int t;
	cin>>t;
	while(t--){
		solve();
	}
	return 0;
}

标签:Educational,Rated,155,int,ll,long,solve,return,const
From: https://www.cnblogs.com/du463/p/17727618.html

相关文章

  • Educational Codeforces Round 97 (Rated for Div 2) G. Death DBMS
    Problem-G-Codeforces题意给定n个字符串,每个字符串有一个值val,n次询问,每次给一个字符串,询问给定n个字符串中是询问字符串子串的值的最大值分析多模式匹配,从中找到给定串的子串,想到建立ac自动机,对于给定字符串,在自动机上面匹配时,沿fail指针向上跳并求最大值即可,由于n个字符......
  • CodeTON Round 6 (Div. 1 + Div. 2, Rated, Prizes!)
    Preface这场因为晚上去做大物实验了,到寝室洗完澡都11点了,就没现场打了的说后面补题发现前5题都很一眼,虽然补题的时候E题FST了(T在了42个点,如果放在比赛就FST了),F题还是很有意思的一个题目的说A.MEXanizedArray简单讨论一下即可#include<cstdio>#include<iostream>#include......
  • Educational Codeforces Round 123 - D(思维题)
    目录D.CrossColoringD.CrossColoring题意$n\timesm$的方格纸上进行q次操作,每次操作选择某整行x和某整列y,使得行x和列y均涂上k种颜色中的一种。问你最终的方案数思路倒序考虑操作,因为对于同一行或者同一列,后面的操作覆盖前面的操作利用数组标记某行或者某......
  • CodeTON Round 6 (Div. 1 + Div. 2, Rated, Prizes!) 更新ing
    A.MEXanizedArray题意给你三个数\(n\)、\(k\)、\(x\),让你求出能否构造出mex为\(k\),且所有数字都不超过\(x\),大小为\(n\)的数组。线索1如果有存在-1情况,先想啥时候不可能,如果能一下子找到-1的情况,这个题会很简单,因为可以的情况反推过去很容易,如果特判复杂就想想是不是诈骗规......
  • Educational Codeforces Round 154 (Rated for Div. 2) A-D
    传送门:edu154/div2A.PrimeDeletion题意:给定一个0-9的排列,要求一个长度>=2的子序列,使得该子序列是质数做法:考虑31或者13即可。不过当时没有立刻想到,感觉1000以内的质数必有答案,打了暴力。用时就多了点。Code#include<bits/stdc++.h>usingnamespacestd;intpri[10......
  • Educational Codeforces Round 143
    A.TwoTowers#include<bits/stdc++.h>usingnamespacestd;#defineintlonglong#definempmake_pairusingpii=pair<int,int>;usingvi=vector<int>;constexprintinf=1e18;voidsolve(){intn,m,cnt=0;stringa,......
  • CodeTON Round 6 (Div. 1 + Div. 2, Rated, Prizes!)(A-D)
    CodeTONRound6(Div.1+Div.2,Rated,Prizes!)A.让你找mex为k的n个数,这n个数从0-x,问n个数的和最大值是多少先判断不行的。然后行的肯定有0-k-1,剩下还有就选x就行。查看代码#include<iostream>usingnamespacestd;typedeflonglongll;voidsolve(){ intn,k,x;......
  • Educational Codeforces Round 107
    依然是四题,但是感觉太久没打,好像变得迟钝了。B题大概就是令\[c={10}^k,a=c*3^k,b=c*2^k\]C的话直接暴力维护每种颜色的第一个位置就行,反正只有50个D的话刚开始没什么想法,构造题什么的真的不会啊打表之后发现,对于k,在cost为0的情况下,最多能造出长度为\(k^2+1\)的串,也就是能够......
  • Deltix Round, Autumn 2021 (open for everyone, rated, Div. 1 + Div. 2) A. Divide
    有一个长为\(n\)的数组,可以执行以下整份操作任意次:选择任意两个数\(a_i,a_j\),满足\(2\mida_i\)\(a_i=\frac{a_i}{2}\)\(a_j=2\cdota_j\)请找到经过任意此操作后的最大\(\sum_{i=1}^{n}a_i\)。在唯一分解定理下讨论两个数\(a_i=2^{\alpha_i}\cdotx,a......
  • Educational Codeforces Round 100
    B.FindTheArray对于条件二来说,1是万金油的存在,所以我们只需要把奇数位置或偶数位置全部变成1即可。因为要求差值小于\(\fracs2\),所以我可以求出奇偶位的和修改较小值即可。#include<bits/stdc++.h>usingnamespacestd;#defineintlonglongusingpii=pair<in......