poj3617Best Cow Line
题意大概是这样,给你一个字符串,你能够进行的操作是这种,
每次拿走这个串的第一个字母,或者最后一个字母,然后放到
一个新串的末尾(当然啦,新串一開始是为空的),当把旧串
里的全部字母拿掉,这个时候就形成了一个字母以及长度都跟
旧串一样的新串。如今要求使这个新串的字典序最小。
我的做法是用贪心,每次比較旧串的第一个和末尾的字母,谁小
就放在第一个。遇到两个字母同样的时候,就比較第二个字母和
倒数第二个字母,以此类推。直到找到两个不同的字母为止,假设
前面的小就输出旧串第一个字母,否则就输出末尾字母。
假设都是同样的字母的话呢,随便输出哪个就好了。
我的代码例如以下:
#include<cstdio>
int num;
char cs[2010];
void init()
{
char tmp[2];
int i;
scanf("%d",&num);
for(i=0;i<num;i++)
{
scanf("%s",tmp);
cs[i]=tmp[0];
}
}
void result()
{
bool flag=1;
int sum,l,r,i;
l=sum=0;
r=num-1;
while(l<=r)
{
for(i=0;l+i<r-i;i++)
if(cs[l+i]<cs[r-i])
{
flag=1;
break;
}
else if(cs[l+i]>cs[r-i])
{
flag=0;
break;
}
if(flag)
{
putchar(cs[l]);
l++;
}
else
{
putchar(cs[r]);
r--;
}
sum++;
if(sum%80==0)
printf("\n");
}
}
int main()
{
init();
result();
}
poj3617Best Cow Line的更多相关文章
- POJ 3617 Best Cow Line (贪心)
Best Cow Line Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 16104 Accepted: 4 ...
- POJ 3617 Best Cow Line(最佳奶牛队伍)
POJ 3617 Best Cow Line Time Limit: 1000MS Memory Limit: 65536K [Description] [题目描述] FJ is about to t ...
- 【BZOJ】【3301】【USACO2011 Feb】Cow Line
康托展开 裸的康托展开&逆康托展开 康托展开就是一种特殊的hash,且是可逆的…… 康托展开计算的是有多少种排列的字典序比这个小,所以编号应该+1:逆运算同理(-1). 序列->序号:( ...
- BZOJ3403: [Usaco2009 Open]Cow Line 直线上的牛
3403: [Usaco2009 Open]Cow Line 直线上的牛 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 48 Solved: 41[S ...
- BZOJ3301: [USACO2011 Feb] Cow Line
3301: [USACO2011 Feb] Cow Line Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 67 Solved: 39[Submit ...
- BZOJ1640: [Usaco2007 Nov]Best Cow Line 队列变换
1640: [Usaco2007 Nov]Best Cow Line 队列变换 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 493 Solved: 2 ...
- BZOJ 3403: [Usaco2009 Open]Cow Line 直线上的牛( deque )
直接用STL的的deque就好了... ---------------------------------------------------------------------- #include& ...
- 3301: [USACO2011 Feb] Cow Line
3301: [USACO2011 Feb] Cow Line Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 82 Solved: 49[Submit ...
- 3403: [Usaco2009 Open]Cow Line 直线上的牛
3403: [Usaco2009 Open]Cow Line 直线上的牛 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 71 Solved: 62[S ...
随机推荐
- SWIFT学习笔记01
1.Swift.用来推断option是不是nil,相当于OC的 if(option) if let name = option{ greeting = "if=====" }els ...
- JDBC批量运行executeBatch
JDBC运行SQL语句,有两个处理的接口,一个PreparedStatement,Statement,一般操作JDBC比較用得多的还是PreparedStatement 只是在运行批量,Prepare ...
- java.text.NumberFormat使用方法
NumberFormat 是全部数值格式的抽象基类. 该类提供了格式化和分析数值的接口. NumberFormat 也提供了确定 哪个语言环境具有数值格式以及它们名字的方法. package com. ...
- NGUI HUDText
今天使用HUDText的时候,发现须要如今场景里创建一个UI2dRoot;不然位置不对 或许应该创建一个prefab这样每一个场景都加入一个就可以. using UnityEngine; ...
- iOS MBProgressHUD 之带底板的加载提示
文章来自:http://blog.csdn.net/ryantang03/article/details/7877120 MBProgressHUD是一个开源项目,实现了很多种样式的提示框,使用上简单 ...
- [转]组合数取模 Lucas定理
对于C(n, m) mod p.这里的n,m,p(p为素数)都很大的情况.就不能再用C(n, m) = C(n - 1,m) + C(n - 1, m - 1)的公式递推了. 这里用到Lusac定理 ...
- [转] iOS (OC) 中 KVC 与 KVO 理解
转自: http://magicalboy.com/kvc_and_kvo/ KVC 与 KVO 是 Objective C 的关键概念,个人认为必须理解的东西,下面是实例讲解. Key-Value ...
- 基于visual Studio2013解决C语言竞赛题之0412水仙花数
题目 解决代码及点评 按照题目要求,3位数是从100~999,那么我们设计一个for循环遍历所有三位数 对每个三位数进行水仙花数的判断即可 /******************** ...
- Mac中使用svn进行项目管理
Mac中使用svn进行项目管理,借鉴了http://blog.csdn.net/q199109106q/article/details/8655204 下面方案多人亲測可用 转载请注明出处:http: ...
- Java 开源博客——B3log Solo 0.6.7 正式版公布了!
Java 开源博客 -- B3log Solo 0.6.7 正式版公布了!欢迎大家下载. 另外,欢迎观摩 B3log 团队的新项目:Wide,也很欢迎大家參与进来 :-) 特性 基于标签的文章分类 P ...