CF1076A Minimizing the String

Posted liqgnonqfu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CF1076A Minimizing the String相关的知识,希望对你有一定的参考价值。

题目大意:

    输入一个长度为n的字符串,去掉一或零个字符,输出去掉后字典序最小的串。(2≤n≤2?105)

思路:

  从前往后找到第一个比前一个字符小的字符,去掉前一个;若找不到去掉最后一个就好。

 1 #include<cstdio>
 2 #include<string>
 3 #include<iostream>
 4 
 5 using namespace std;
 6 
 7 int n;
 8 string ss,ans;
 9 
10 int main()
11 {
12     scanf("%d",&n);
13     cin>>ss;
14     int len=ss.length(),ans=len-1;
15     for(int i=1;i<len;i++)
16     {
17         if(ss[i]<ss[i-1])
18         {
19             ans=i-1;
20             break;
21         }
22     }
23     for(int i=0;i<ans;i++)
24     {
25         cout<<ss[i];
26     }
27     for(int i=ans+1;i<len;i++)
28     {
29         cout<<ss[i];
30     }
31     cout<<endl;
32     return 0;
33 }

 

//第一次cf,记录一下。

 


以上是关于CF1076A Minimizing the String的主要内容,如果未能解决你的问题,请参考以下文章

文档翻译-Minimizing your app's Memory Footprint

CF914GSum the Fibonacci 快速??变换模板

CF914G Sum the Fibonacci(FWT,FST)

CF1486 C2. Guessing the Greatest (hard version)

CF1286E-Fedya the Potter Strikes BackKMP,RMQ

CF1277D Let's Play the Words?