博客
关于我
poj3617
阅读量:301 次
发布时间:2019-03-04

本文共 684 字,大约阅读时间需要 2 分钟。

一道简单的贪心题,每次都从两端开始找,找到一个小的就放到T的末尾,然后再重新寻找。

需要注意的是相等的情况,比如这三种情况 AABAA, AABCAA, AACBAA。因为两边相等,所以需要继续向下判断,直到找到一个不相等的,但是如果用递归的话太慢了,本题就是通过一个循环来进行寻找,这也是循环中为什么没有等于的条件的原因。

#include 
#include
#include
using namespace std;int main(){ int n = 0, cnt = 0; vector
initial; char d = '\0'; scanf("%d", &n); int a = 0, b = n - 1; for (int i=0; i
initial[b-i]) { flag = true; break; } else if (initial[a+i] < initial[b-i]) { flag = false; break; } } if (flag == true) { printf("%c", initial[b--]); cnt++; } else { cnt++; printf("%c", initial[a++]); } if (cnt%80 == 0) { printf("\n"); } } return 0;}

转载地址:http://sgaq.baihongyu.com/

你可能感兴趣的文章
jQuery练习t110
查看>>
jQuery练习t123
查看>>
jQuery练习t167,从0到1
查看>>
jQuery练习t271,从0到1
查看>>
jQuery练习t310,从0到1
查看>>
asp.net代码练习 work015 回调技术
查看>>
asp.net代码练习 work016 fileupload文件上传
查看>>
asp.net代码练习 work021 DataReader的使用
查看>>
PHP7.0--如何使用函数的引用
查看>>
Java基础--01--数据类型/方法/数组
查看>>
【JokerのZYNQ7020】LINUX_EMIO_LED。
查看>>
【JokerのZYNQ7020】LINUX_EMIO_BUTTON。
查看>>
vim匹配特定的行并删除
查看>>
读取excel文件错误
查看>>
傅里叶变换的初级理解三
查看>>
F1 score的意义
查看>>
python36+centos7离线安装tensorflow与talib的方法
查看>>
hdf5与hdfs的区别
查看>>
scala运行的方式
查看>>
tf.Session().as_default的作用
查看>>