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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ffplay播放器原理剖析

    ffplay播放器原理剖析****************************************************************************** ffplay系列博客:                                           ** ffplay播放器原理剖析    …

    2022年6月29日
  • ftp客户端发起对ftp服务器_ftp登陆命令

    ftp客户端发起对ftp服务器_ftp登陆命令FTP是一个C/S类型的软件,连接服务端需要FTP客户端才能完成,常见的FTP客户端有以下几种:浏览器:可以通过浏览器中输入ftp://ip或者ftp://域名的方式3分钟了解计算机发展历史-组团学来访问FTP自带客户端:命令行下可以使用ftp命令去连接三方客户端:FileZilla8uftp图形软件或者文本界面的lftp等三种方式中,文本界面是比较麻烦的,无法鼠标流。所以我重点给大家讲解一…

    2022年10月21日
  • C++ 序列化和反序列化

    C++ 序列化和反序列化序列化序列化1、背景2、定义3、序列化评价指标4、序列化实例参考序列化1、背景1、在TCP的连接上,它传输数据的基本形式就是二进制流,也就是一段一段的1和0。2、在一般编程语言或者网络框架提供的API中,传输数据的基本形式是字节,也就是Byte。一个字节就是8个二进制位,8个Bit。二进制流和字节流本质上是一样的。对于我们编写的程序来说,它需要通过网络传输的数据是结构化的数据,比如,一条命令、一段文本或者一条消息。对应代码中,这些结构化的数据都可以用一个类或者一个结构体来表示。序

    2022年6月17日
  • 常见应用端口整理

    常见应用端口整理

    2021年9月2日
  • 怎么复制一台虚拟机到另外一台电脑上

    怎么复制一台虚拟机到另外一台电脑上怎么复制一台虚拟机到另外一台电脑上

    2022年4月23日
  • phpstorm 2021 激活码3月最新在线激活

    phpstorm 2021 激活码3月最新在线激活,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月15日

发表回复

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

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