博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj 3617 best cow line
阅读量:6961 次
发布时间:2019-06-27

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

/** poj 3617 best cow line* 05.05/2014*/#include 
#include
#define MAXN 4000int N;char ca[MAXN];void solve(){ int starti = 0,endi = N-1; int count = 0; while (starti <= endi) { for(int i =0; starti + i <= endi; i++) { if(ca[starti + i] < ca[endi-i]) { putchar(ca[starti ++]);count++; break; } else if(ca[starti + i] > ca[endi-i]) { putchar(ca[endi --]);count++; break; } else { if (starti + i == endi) { if(ca[starti + i] <= ca[endi-i]) { putchar(ca[starti ++]);count++; break; } else if(ca[starti + i] > ca[endi-i]) { putchar(ca[endi --]);count++; break; } } } } if(count == 80) { putchar('\n'); count =0; } } putchar('\n'); return;}int main(){ scanf("%d",&N); for(int i = 0; i < N; i++) scanf("\n%c",&ca[i]); solve(); return 0; }

题目:

从字符串两端抽取,使之按字典升序排列

 

分析:

每次取字典序较小的那一端。贪心。

 

心得:

1 这题WA了很久,主要一开始没有把 大于 小于 和等于 的三种情况分开。等于情况要单独讨论,一直循环比较。

2 单行逐个读入字符的技巧get

转载于:https://www.cnblogs.com/difei/p/3711826.html

你可能感兴趣的文章
Node处理http跨域请求
查看>>
Gradle for Android 第五篇( 多模块构建 )
查看>>
框架 也可以这样用 easy
查看>>
LCUI 1.1.0 Beta 发布,C 的图形界面库
查看>>
Base64
查看>>
MariaDB(mysql)之半同步复制及复制过滤器的使用
查看>>
WCF Ria Service 理解制图版本【待续】
查看>>
【IOS】高仿糗事百科客户端(基本实现了除注册,评论之外的功能)
查看>>
puppet之模块详解
查看>>
shell脚本
查看>>
python 模块
查看>>
Flash Builder生成asdoc格式的帮助文档
查看>>
分享实录 | 第四范式程晓澄:机器学习在推荐系统中的应用
查看>>
测试服务器响应时间
查看>>
xm console无法联接guest问题的解决
查看>>
一步一步SharePoint 2007之一:安装SharePoint
查看>>
Server Develop (七) Linux 守护进程
查看>>
Android requires compiler compliance level 5.0. Please fix project properties.错误
查看>>
如何从两个List中筛选出相同的值
查看>>
几个软件研发团队管理的小问题
查看>>