当前位置: 首页 > news >正文

codeforces A. Simple Palindrome

目录

题面

代码


题面

A. 简单回文串
每个测试用例时间限制:1 秒
每个测试用例内存限制:256 兆字节

纳雷克要在幼儿园陪一些两岁的孩子度过两个小时。他想教孩子们竞技编程,他们的第一堂课是关于回文串的。

纳雷克发现孩子们只认识英文字母表中的元音字母(即 a、e、i、o 和 u 这几个字母),所以他需要构造一个仅由元音字母组成的字符串。构造好字符串后,他会让孩子们数其中是回文串的子序列的数量。纳雷克想把问题简单化,所以他在寻找一个字符串,使得其中回文子序列的数量最少。

请帮助纳雷克找到一个长度为 n ,且仅由小写英文字母中的元音字母(a、e、i、o 和 u )组成的字符串,该字符串中的回文子序列数量最少。

定义

一个字符串如果从左到右和从右到左读起来一样,那么它就是一个回文串。
如果字符串 t 可以通过从字符串 s 中删除若干个(可能是零个或全部)字符,然后将剩余字符按顺序连接而得到,那么 t 就是 s 的一个子序列。例如,“odocs” 是 “codeforces” 的一个子序列。
输入
输入的第一行包含一个整数 t(1 ≤ t ≤ 100),表示测试用例的数量。接下来是每个测试用例的描述。

每个测试用例仅包含一行,其中有一个整数 n(1 ≤ n ≤ 100),表示字符串的长度。
输出
对于每个测试用例,输出任意一个满足上述条件且长度为 n 的字符串。


说明
在第一个例子中,“uo” 只有三个回文子序列:“u”、“o” 和空字符串。可以证明没有更好的答案了。
在第三个例子中,“oeiiua” 只有八个回文子序列:“o”、“e”、“i”、“i”、“u”、“a”、“ii” 和空字符串。可以证明没有更好的答案了。

代码




#include<bits/stdc++.h>
using namespace std;
char b[5]={'a','e','i','o','u'};
void solve()
{
	int n;
	cin >> n;
	vector<int>a(5);
	if(n<=5)
	{
		for(int i=0;i<n;i++)
		{
			cout << b[i];
		}
		cout << endl;
	}
	else{
		for(int i=0;i<n;i++)
		{
			a[i%5]++;//预处理每一个字符输出的次数
		}
		for(int i=0;i<5;i++)
			for(int j=0;j<a[i];j++)
			cout << b[i];
			cout << endl;
	}
	
}
相同字母放一起时回文序列最少
int main()
{
	int q;
	cin >> q;
	while(q--)
	{
		solve();
	}
}

相关文章:

  • 人工智能100问☞第3问:深度学习的核心原理是什么?
  • 模板引擎语法-变量
  • Java类加载机制原理与应用
  • 可能存在特殊情况,比如控制台显示有延迟、缓冲问题等影响了显示顺序。
  • Koordinator-NodeSLO
  • 使用Python解决Logistic方程
  • vue项目使用html2canvas和jspdf将页面导出成PDF文件
  • springboot新增调度任务
  • 当当平台商品详情接口设计与调用指南
  • PostgreSQL 的 COPY 命令
  • 算法思想之位运算(一)
  • Model Context Protocol (MCP) 模型上下文协议
  • U盘引导盘制作Rufus v4.7.2231
  • 第十六届蓝桥杯 省赛C/C++ 大学B组
  • 大模型开发:源码分析 Qwen 2.5-VL 视频抽帧模块(附加FFmpeg 性能对比测试)
  • 软考day03
  • THM Billing
  • Win10 开机自动开启手动代理 “手动设置代理”,如何关闭 “使用代理服务器” 如何开机时保持关闭VPN
  • C++初阶-inline的使用
  • Linux xorg-server 解析(一)- 编译安装Debug版本的xorg-server
  • 长沙网站优化培训/如何查看一个网站的访问量
  • 泰国做那个视频网站/合肥网站推广公司排名
  • 哪个汽车网站汽贸店免费做/广州营销推广
  • 定制网站成本多少/seo助力网站转化率提升
  • 北京西路做网站的公司/成都百度推广电话
  • 做装修的网站有哪些内容/nba常规赛