• POJ 3617 Best Cow Line (贪心)


    题意: 给定长度为N的字符串S,要构造一个长度为N的字符串T。起初T是一个空串,随后反复进行下列任意操作

    1.从字符串S头部删除一个字符,加到T的尾部

    2.从字符串S尾部删除一个字符,加到T的尾部

    目的是,构造字典序尽可能小的字符串T

    思路:简单贪心,比较当前字符串S首尾字符的大小,选取小的加入T,若两者相同,则比较下一个字符。

    #include<stdio.h>
    #include<queue>
    #include<iostream>
    #include<algorithm>
    #include<math.h>
    #include<string.h>
    #define INF 0x3f3f3f3f
    #define LL long long
    #define MOD 100000007
    #define MAXSIZE 10005
    
    using namespace std;
    
    char s[MAXSIZE],t[MAXSIZE];
    
    int main()
    {
        int n,lt;
        char ch;
        while(scanf("%d
    ",&n)!=EOF)
        {
            lt=1;
            for(int i=1;i<=n;i++)
                scanf("%c%c",&s[i],&ch);
    
            int p1=1,p2=n;
            while(p1 <= p2)
            {
                if(s[p1] < s[p2])
                {
                    t[lt++] = s[p1];
                    p1++;
                }
    
                else if(s[p1] > s[p2])
                {
                    t[lt++] = s[p2];
                    p2--;
                }
    
                else
                {
                    int t1 = p1;
                    int t2 = p2;
                    while(s[t1] == s[t2] && t1<t2)
                    {
                        t1++;
                        t2--;
                    }
                    if(s[t1] <= s[t2])
                    {
                        t[lt++] = s[p1];
                        p1++;
                    }
    
                    else
                    {
                        t[lt++] = s[p2];
                        p2--;
                    }
                }
            }
            for(int i=1;i<=n;i++)
            {
                printf("%c",t[i]);
                if(i%80==0)
                    printf("
    ");
            }
                
        }
        return 0;
    }
    View Code
  • 相关阅读:
    常用的Linux操作命令(一)
    本地绑定虚拟域名进行测试
    MVC定义路由
    Asp.Net请求处理机制中IsApiRuntime解析
    IOC
    数据库分页【Limt与Limt..OFFSET 】
    两个域名指向同一个网站
    WebApi服务以及跨域设置
    JS中小数的差,比较大小
    委托
  • 原文地址:https://www.cnblogs.com/alan-W/p/7187654.html
Copyright © 2020-2023  润新知