POJ3617-Best Cow Line
来源:互联网 发布:中科院半导体所 知乎 编辑:程序博客网 时间:2024/06/05 20:07
题目:
给定长度为N的字符串S 要构造一个长度为N的字符串T。起初,T是一个空串随后反复进行如下操作1:从S的头部删除一个字符串,加到T的末尾2:从S的尾部删除一个字符串 将其加到T的末尾其要求就是构造字典序尽可能小的字符串例如 S="ACDBCB" 》 S="CDBCB" 》 S=""S="CDBC" 》 S="CDB" 》S="CD" 》S="D" 》S="" T="" 》T="A" 》T="AB" 》T="ABC" 》T="ABCB" 》T="ABCBC" 》T="ABCBCD"个人理解:
以上过程可以看出 S在选择进入T中的过程中 总是比较S的开头和末尾的较小的字符串放到T末尾但是对于S的开头和末尾相同的情形需要注意在这种情况下 我们需要继续比较 S的第二位 与倒数第二位如果相同则继续比较 直到中间相遇之前如果能比较出来则直接比较 如果直到中间两者也是相同的 则去掉S的哪边都可以代码<C语言>:
# include <stdio.h>void ZIDIAN(char S[],char T[]);# define N 100000int main(){char S[N],T[N];gets(S);ZIDIAN(S,T);printf("%s",T);return 0;}void ZIDIAN(char S[],char T[]){int i=0,A=0,B=-1,Flag=0,k=0;while(S[++B]);//求S的字符串长度B--;while(A<=B){while(S[A+i]==S[B-i])i++;T[k++]=(S[A+i]<S[B-i]?S[A++]:S[B--]);i=0;}T[k]='\0';}
阅读全文
0 0
- POJ3617 Best Cow Line
- POJ3617 Best Cow Line
- POJ3617 Best Cow Line
- best cow line(poj3617)
- POJ3617-Best Cow Line
- POJ3617 Best Cow Line
- POJ3617 Best Cow Line
- poj3617 Best Cow Line
- POJ3617 Best Cow Line
- POJ3617-Best Cow Line
- poj3617 Best Cow Line
- poj3617 Best Cow Line
- POJ3617 Best Cow Line
- POJ3617 Best Cow Line
- poj3617 Best Cow Line 贪心
- POJ3617 Best Cow Line 贪心
- poj3617 Best Cow Line 贪心
- poj3617 Best Cow Line 贪心
- Linux grep命令学习记录
- nfs 以及利用kerberos保护nfs输出
- 设计模式六大原则
- GIT学习笔记--提交代码到远程仓库
- request和response的页面跳转
- POJ3617-Best Cow Line
- 二维码url的长度
- 文章标题
- 告诉你什么是javascript的回调函数
- 构建 tomcat-redis-session-manager-master
- 机器学习中的特征选择问题
- 微信公众平台 生成带参数的二维码
- python-双均线预测能力检验2
- 测试redis有没有装成功小例子