poj3617Best Cow Line

poj3617Best Cow Line

大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。

题意大概是这样,给你一个字符串,你能够进行的操作是这种,
每次拿走这个串的第一个字母,或者最后一个字母,然后放到
一个新串的末尾(当然啦,新串一開始是为空的),当把旧串
里的全部字母拿掉,这个时候就形成了一个字母以及长度都跟
旧串一样的新串。如今要求使这个新串的字典序最小。

我的做法是用贪心,每次比較旧串的第一个和末尾的字母,谁小
就放在第一个。遇到两个字母同样的时候,就比較第二个字母和
倒数第二个字母,以此类推。直到找到两个不同的字母为止,假设
前面的小就输出旧串第一个字母,否则就输出末尾字母。

假设都是同样的字母的话呢,随便输出哪个就好了。

我的代码例如以下:

 

#include<cstdio>
int num;
char cs[2010];
void init()
{
	char tmp[2];
	int i;
	scanf("%d",&num);
	for(i=0;i<num;i++)
	{
		scanf("%s",tmp);
		cs[i]=tmp[0];
	}
}
void result()
{
	bool flag=1;
	int sum,l,r,i;
	l=sum=0;
	r=num-1;
	while(l<=r)
	{
		for(i=0;l+i<r-i;i++)
			if(cs[l+i]<cs[r-i])
			{
				flag=1;
				break;
			}
			else if(cs[l+i]>cs[r-i])
			{
				flag=0;
				break;
			}
		if(flag)
		{
			putchar(cs[l]);
			l++;
		}
		else
		{
			putchar(cs[r]);
			r--;
		}
		sum++;
		if(sum%80==0)
			printf("\n");
	}
}
int main()
{
	init();
	result();
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/118322.html原文链接:https://javaforall.net

(0)
上一篇 2021年12月7日 下午8:00
下一篇 2021年12月7日 下午9:00


相关推荐

  • Django(66)admin后台管理注册用户「建议收藏」

    Django(66)admin后台管理注册用户「建议收藏」前言我们使用django创建用户可以使用注册接口的方式,也可以使用django自带的后台管理系统,这里就介绍使用后台管理系统创建用户admin后台管理系统在使用之前我们可以使用第三方的插件,来美

    2022年7月30日
    10
  • mle与map_normal map

    mle与map_normal map摘要本文是关于MLE(最大似然估计)与MAP(最大后验概率)的一些自己学习的心得.(本文的重点在于对比MLE和MAP)正文1.MLE(最大似然估计)MLE简单的理解可以这样:假设我们手上有一批数据(样本),而且我们假设这些数据(样本)服从某个分布(模型已知),但是参数未知.这个时候,我们希望对这个参数进行估计,而MLE的思想就是找到一个参数值,使得每条样本出现的概率最…

    2025年6月19日
    6
  • 边车模式

    边车模式边车模式边车 就是在原来二轮摩托车旁边增加一个座位成了三轮摩托车 增加的一部分称为边车边车模式 对现有的服务增加额外的功能 这些功能并不影响业务逻辑 例如增加日志 限流 熔断 服务的注册和服务发现有专门服务来实现 像程序中的控制和业务逻辑分离 Controller 和 Service 层分离 这样大大降低了服务之间的耦合度并提升了扩展性和降低业务的复杂性这也符合单一职责原则 服务就是负载实现好自己的业务逻辑 一些其他的控制功能就交给其他组件来实现

    2026年3月16日
    2
  • pythoncharm注释快捷键_JAVA注释快捷键

    pythoncharm注释快捷键_JAVA注释快捷键Pycharm中常用快捷键使用及注释方式1.快捷键设置(Ctrl+Alt+s)或File—>Settings—>Keymap—>搜索栏搜索’format’—>Code快速创建文件(Alt+Insert)快速注释代码(Ctrl+/)快速取消注释代码(Ctrl+/)复制一行代码(Ctrl+D)撤销对代码的修改(Ctrl+…

    2022年8月27日
    6
  • linux访问hive的文件路径,hive数据库

    linux访问hive的文件路径,hive数据库一 基本使用 1 进入 hive 使用 xshell 远程登陆 进入 linux 系统 任意位置输入 hive 即可 任意位置输入 hive2 进入 hive 数据库进行查询操作查看数据库 showdatabase ctrl l 清屏 usewt showtables select froma sethive cli print current db true 意思是显示当前数据库括号里

    2026年3月19日
    1
  • The MySQL C API 编程实例

    The MySQL C API 编程实例

    2021年11月13日
    46

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号