Educational Codeforces Round 107

依然是四题,但是感觉太久没打,好像变得迟钝了。
B题大概就是令

c=10k,a=c3k,b=c2k

C的话直接暴力维护每种颜色的第一个位置就行,反正只有50个

D的话刚开始没什么想法,构造题什么的真的不会啊

打表之后发现,对于k,在cost为0的情况下,最多能造出长度为k2+1的串,也就是能够让每一种关系都出现一次,那么后面的话,我们每次选一个关系出现次数最小的就行,迷迷糊糊地过了。

#include<algorithm>
#include<cstdio>
#include<cstring>
#include<vector>
#define fo(i,a,b) for (int (i)=(a);(i)<=(b);(i)++)
#define fd(i,b,a) for (int (i)=(b);(i)>=(a);(i)--)
#define mk(x,y) make_pair((x),(y))
#define A puts("YES")
using namespace std;
typedef long long ll;
const int N=3e5+5;
int n,q;
int t,x,sum,k,ans,len;
int h[50][50];

char a[N];
int b[N];
bool flag;
void dfs(int x){
	if (flag) return;
	if (x>len){
		flag=1;
		fo(i,1,n) b[i]=a[i]-'a'; 
		return;
	}
	
	fo(i,1,k){
		a[x]='a'+i-1;
		
		int z=0;
		fo(j,1,x-2) {
			if (a[j]==a[x-1] && a[j+1]==a[x]) z++;
		}
		
		if (z) continue;
		dfs(x+1);
	}
}
int main(){
	
//	freopen("data.in","r",stdin);
	scanf("%d %d",&n,&k);
	
	len=k*k+1;
	dfs(1);
	
	if (n<=len) {
		fo(i,1,n) printf("%c",b[i]+'a');
		return 0;
	}
	
	fo(i,1,len) printf("%c",b[i]+'a');
	fo(i,1,len-1) {
		h[b[i]][b[i+1]]=1;
	}
	
	int id,mn;
	fo(i,len+1,n) {
		
		mn=n;
		fo(j,0,k-1) {
			if (h[b[i-1]][j]<mn){
				mn=h[b[i-1]][j];
				id=j;
			}
		}
		
		b[i]=id;
		h[b[i-1]][id]++;
		
	}
	
	fo(i,len+1,n) printf("%c",b[i]+'a');
	
	return 0;
	
}

 
 
posted @   gan_coder  阅读(5)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
  1. 1 青春コンプレックス 結束バンド
  2. 2 ギターと孤独と蒼い惑星 結束バンド
  3. 3 星座になれたら 結束バンド
  4. 4 恋のうた (feat. 由崎司) 鬼頭明里
  5. 5 月と星空 カノエラナ
  6. 6 Cagayake!GIRLS[5人Ver.] (TV size Ver.) 桜高軽音部
  7. 7 不可思議のカルテ 不可思議のカルテ
  8. 8 優しさの理由 ChouCho
青春コンプレックス - 結束バンド
00:00 / 00:00
An audio error has occurred, player will skip forward in 2 seconds.

作词 : 樋口愛

作曲 : 音羽-otoha-

编曲 : 三井律郎

暗く狭いのが好きだった 深く被るフードの中

喜欢黑暗狭窄的地方 如被深深掩盖的兜帽之中

無情な世界を恨んだ目は どうしようもなく愛を欲してた

对眼中无情的世界恨之入骨 却无可救药地想得到爱

雨に濡れるのが好きだった 曇った顔が似合うから

雨に濡れるのが好きだった 曇った顔が似合うから

雨に濡れるのが好きだった 曇った顔が似合うから

喜欢被雨淋湿 因为这才符合我阴沉的脸

嵐に怯えてるフリをして 空が割れるのを待っていたんだ

假装着害怕暴风雨 又等待着天空的破裂

かき鳴らせ 光のファズで 雷鳴を 轟かせたいんだ

奏响吧 以光的法兹让雷鸣声轰鸣

打ち鳴らせ 痛みの先へ どうしよう! 大暴走獰猛な鼓動を

敲响吧 苦痛的前方该如何! 以这狂暴凶猛的心跳回应吧

悲しい歌ほど好きだった 優しい気持ちになれるから

悲しい歌ほど好きだった 優しい気持ちになれるから

悲しい歌ほど好きだった 優しい気持ちになれるから

尤为喜欢听忧伤的歌曲 因为会让心情变得平和下来

明るい場所を求めていた だけど触れるのは怖かった

渴求着明亮的地方 但是也害怕着触碰光明

深く潜るのが好きだった 海の底にも月があった

喜欢潜入深海之中 因为海底之下也有月亮

誰にも言わない筈だった が 歪な線が闇夜を走った

本来应该不会和任何人提起 但扭曲的线条却在黑夜里奔跑

かき鳴らせ 交わるカルテット 革命を 成し遂げてみたいな

奏响吧 这交响的四重奏 试着完成这革命

打ち鳴らせ 嘆きのフォルテ どうしよう? 超奔放凶暴な本性を

敲响吧 叹息的加强符该如何? 这奔放且狂暴至极的本性啊

私 俯いてばかりだ

私 俯いてばかりだ

私 俯いてばかりだ

我 一直低着头

それでいい 猫背のまま 虎になりたいから

那样就好 因为成为一只驼背的老虎正如我所愿啊

かき鳴らせ 光のファズで 雷鳴を 轟かせたいんだ

かき鳴らせ 光のファズで 雷鳴を 轟かせたいんだ

かき鳴らせ 光のファズで 雷鳴を 轟かせたいんだ

奏响吧 以光的法兹让雷鸣声轰鸣

打ち鳴らせ 痛みの先へ さあいこう 大暴走獰猛な鼓動を

敲响吧 向着苦痛的前方冲吧 这暴走凶猛的心跳

衝動的感情 吠えてみろ!

冲动的感情 咆哮吧!

かき鳴らせ

奏响吧

雷鳴を这雷鸣

点击右上角即可分享
微信分享提示