大致题意:
给你一个字符串,现在要生成一个新的字符串,规则是每次从原字符串的头部或者尾部取一个字符放在新字符串的尾巴上。求字典序最小的新字符串。
大致思路:
正解是后缀数组,这里用贪心水过去了。
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
const int nMax=30005;
char str[nMax];
bool check(int a,int b){
while(a<b){
if(str[a]>str[b])return 1;
if(str[a]<str[b])return 0;
a++;
b--;
}
return 0;
}
int main(){
int n,i,j,head,tail;
while(scanf("%d",&n)!=EOF){
int cnt=0;
head=0,tail=n-1;
for(i=0;i<n;i++){
cin>>str[i];
}
while(head<=tail){
if(check(head,tail)==0){
printf("%c",str[head]);
cnt++;
head++;
}
else{
printf("%c",str[tail]);
cnt++;
tail--;
}
if(!(cnt%80))
printf("\n");
}
if(cnt%80)
printf("\n");
}
return 0;
}
分享到:
相关推荐
poj 3623 Best Cow Line, Gold.md
- POJ 3411、POJ 1724:贪心策略的选择与应用。 #### 二分查找 - **题目示例**: - POJ 3373、POJ 1691:二分查找技术的应用。 ### 动态规划 #### 二维动态规划 - **题目示例**: - POJ 1191、POJ 1054:基于...
- POJ 3295: 贪心策略的应用 - **模拟**:对于一些可以直接通过步骤来解决问题的情况。 - **示例题目**: - POJ 1068: 模拟过程演示 - POJ 2632: 模拟算法应用 - POJ 1573: 模拟策略展示 - POJ 2993: 模拟技巧...
【标题】"POJ2092:计数排序,求第K大的元素"是一个编程题目,主要涉及计数排序算法以及如何在数组中找出第K大的元素。计数排序是一种非基于比较的排序算法,它适用于整数排序,尤其在数据范围不大的情况下效率极高。...
北大POJ3267-The Cow Lexicon
【标题】"POJ3278-Catch That Cow" 是一个编程竞赛题目,源自北京大学的在线判题系统POJ(PKU Online Judge)。这个题目挑战程序员解决一个具体的问题,通常涉及算法设计和实现。 【描述】"北大POJ3278-Catch That ...
### poj 4001 catch that cow:使用广度优先搜索寻找丢失的牛 #### 问题背景 在《catch that cow》这个问题中,我们需要帮助一个农民找到他丢失的牛。牛可能向左移动一步、向右移动一步或者直接跳到当前位置的两倍...
《POJ3267 - The Cow Lexicon》是一道源于北京大学在线判题系统POJ(Problem Online Judge)的编程竞赛题目。这道题目主要涉及数据结构与算法的知识,特别是字符串处理和字典树(Trie)的应用。下面将详细阐述这个...
- (poj3295):讲解如何利用贪心策略来解决问题,强调每一步选择都是局部最优解。 5. **动态规划**: - (poj1068, poj2632, poj1573, poj2993, poj2996):动态规划是一种通过分解问题为子问题,并将子问题的结果...
北大POJ3176-Cow Bowling
- poj2109: 同样适用贪心策略解决。 ##### 3. 递归和分治法 - **定义**: 递归是一种通过调用自身来解决问题的方法;分治法则将大问题分解为小问题解决。 - **应用场景**: 适用于问题能够分解成相似的小问题,并且...
北京大学的在线判题系统POJ(Problem Online Judge)中有一道颇受欢迎的题目——"Cow Bowling",编号为3176。这是一道涉及动态规划和概率计算的编程题目,旨在考察参赛者的算法设计和实现能力。 题目描述: 在本题...
POJ(Programming Online Judge)是国内外广受欢迎的在线编程评测系统,其中的2287题正是以"田忌赛马"为背景的算法问题,主要考察选手对贪心策略的理解和应用。 贪心算法是一种在每一步选择中都采取当前状态下最好...
这是西北工业大学的POJ试题的答案,欢迎下载!
POJ(Princeton Online Judge)是一個在线编程平台,为编程爱好者和学生提供了大量的算法题目和编程挑战。下面是POJ题目分类的详细知识点总结: 初级 1. 基本算法: * 枚举法:通过枚举所有可能的解来解决问题,...
poj 1989 The Cow Lineup.md
POJ 2703:选择出行方式 **题目概述**: 本题目旨在通过编程的方式解决一个实际问题——选择最佳出行方式(步行或骑自行车)。题目给出了一种算法来决定在不同条件下应该采取哪种出行方式。 **代码解析**: - **...
网上整理的一些poj刷题指南。 poj地址:http://poj.org
【标题】"POJ3274-Gold Balanced Lineup" 是一道来自北京大学在线判题系统POJ(Problem Online Judge)的编程竞赛题目。这道题目的主要目标是通过编写程序来解决一个与数学和算法相关的问题。 【描述】"北大POJ3274...
这些题目是针对ACM竞赛(ACM International Collegiate Programming Contest,简称ICPC)中的编程训练,POJ(Problem Set for Online Judges)是一个在线的编程竞赛平台,提供了许多算法和逻辑思维的练习题目。...