Best Cow Line---poj3617(贪心)
题目链接:http://poj.org/problem?id=3617
题意:有n头牛.刚开始有一个序列.现在想要重新排列.每次从原始的序列头部和尾部取出一个取出一个放到新的序列尾部.最后使得得到的新序列字典序最小;
我们每次可以比较头部和尾部的两个字母,把字典序小的加入新的队列中去.如果相等的话找到一个最先能找到字典序小的那个放入新的序列中去;
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <stdlib.h> using namespace std; #define N 2110
#define met(a, b) memset(a, b, sizeof(a)) typedef long long LL; int n;
char s[N], T[N], ch; int compare(int L, int R)
{
if(s[L] == s[R])
{
while(s[L] == s[R] && L <= R)
L++, R--;
}
return s[L] < s[R];
} int main()
{ while(scanf("%d ", &n) != EOF)
{
for(int i=; i<n; i++)
scanf("%c%c", &s[i], &ch);
int L = , R = n-, k = ;
while(L <= R)
{
if(compare(L, R))
T[k++] = s[L++];
else
T[k++] = s[R--];
}
T[k] = '\0';
for(int i=; i<k; i++)
{
if(i%== && i!=)
printf("\n");
printf("%c", T[i]);
}
}
return ;
}
/*
6
A
C
D
B
C
B ABCBCD
*/
Best Cow Line---poj3617(贪心)的更多相关文章
- poj3617 best cow line(贪心题)
Best Cow Line Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 32687 Accepted: 8660 De ...
- POJ 3617 Best Cow Line (贪心)
Best Cow Line Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 16104 Accepted: 4 ...
- POJ 3617:Best Cow Line(贪心,字典序)
Best Cow Line Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 30684 Accepted: 8185 De ...
- POJ3617:Best Cow Line (贪心&&后缀数组)
FJ is about to take his N (1 ≤ N ≤ 2,000) cows to the annual"Farmer of the Year" competiti ...
- poj3617 Best Cow Line(贪心,字典序问题)
https://vjudge.net/problem/POJ-3617 这类字符串处理字典序问题经常用到贪心, 每决定输出一个字符之前,都要前后i++,j--逐个比大小,直至比出为止. #includ ...
- POJ3617 Best Cow Line【贪心】
Description 给定长度为n的字符串S,要构造一个长度为n的字符串T.起初,T是空串,随后反复进行下列任意操作: 1.从S的头部删除一个字符,加到T的尾部 2.从S的尾部删除一个字符,加 ...
- POJ 3617 Best Cow Line ||POJ 3069 Saruman's Army贪心
带来两题贪心算法的题. 1.给定长度为N的字符串S,要构造一个长度为N的字符串T.起初,T是一个空串,随后反复进行下面两个操作:1.从S的头部删除一个字符,加到T的尾部.2.从S的尾部删除一个字符,加 ...
- poj 3617 Best Cow Line (字符串反转贪心算法)
Best Cow Line Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9284 Accepted: 2826 Des ...
- POJ 3617 Best Cow Line 贪心算法
Best Cow Line Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 26670 Accepted: 7226 De ...
- 贪心算法训练(九)——Best Cow Line(字典序最小问题)
原题链接:Best Cow Line 1. 问题描述 2. 输入 6 A C D B C B 3. 输出 ABCBCD 4.思路分析 不断地取原字符串 S 中开头和末尾比较小的字符串放到 T 的末尾 ...
随机推荐
- 利用BurpSuite实现半自动化盲注
为了方便演示,这里直接使用字符,构造SQL Payload: ?id= and substring(user(),,)='r' 1.使用Burp抓包,发送到Intruder,设置模式和变量 2.设置字 ...
- NFS 常见报错
问题:客户端挂载共享目录后,不管是root用户还是普通用户,创建新文件时属主属组都为nobody解决方法:这种情况会出现在 centos6 或 NFS 4版本中,只要在挂载的时候加上 -o nfsve ...
- Ansible Playbook 使用变量
如何在 Playbook 中定义并使用变量: vars: - user: "test" # 定义变量 tasks: - name: create user user: name=& ...
- linux 文件编码问题
iconv -f UTF- -t gb18030 file_input -o file_output 上述命令不一定有用. 大概了解下文件编码,和vim里面的编码情况. 1 字符编码基础知识 字符编码 ...
- 【大数据系列】hadoop集群设置官方文档翻译
Hadoop Cluster Setup Purpose Prerequisites Installation Configuring Hadoop in Non-Secure Mode Config ...
- webapck html-loader实现资源复用
1.安装 npm i html-loader --save-dev 2.项目目录 layout文件夹下的footer.html文件为: <script type="text/javas ...
- win10下网狐荣耀手机端android app编译
基于荣耀版(2017.5.21)12 款游戏..7z这款游戏,网上有下载的 1.解压后进入 cd shoujiduan 2.将client/base复制到client/ciphercode/下,也就是 ...
- 部署OpenStack问题汇总(三)--Failed to add image
使用glance add 上传完img文件的时候出现了下面的错误 ------------------------------------------------------------------- ...
- 2015.7.11js-10(无缝滚动)
1.实现原理:setInterval定时器,让某元素position的left属性定时滚动,使用到js中的元素的offsetLeft属性. 2.案例:1.css的实现是外div是4张图片的总宽度,设置 ...
- 【转】Navigation Drawer(导航抽屉)
创建一个导航抽屉 创建抽屉布局 初始化抽屉列表 处理导航项选点击事件 监听导航抽屉打开和关闭事件 点击应用图标来打开和关闭导航抽屉 创建一个导航抽屉 导航抽屉是一个位于屏幕左侧边缘用来显示应用程序 ...