zoukankan      html  css  js  c++  java
  • AtCoder Beginner Contest 043 D

    题目链接:http://abc043.contest.atcoder.jp/tasks/arc059_b

    Time limit : 2sec / Memory limit : 256MB

    Score : 400 points

    Problem Statement

    Given a string t, we will call it unbalanced if and only if the length of t is at least 2, and more than half of the letters in t are the same. For example, both voodoo andmelee are unbalanced, while neither noon nor a is.

    You are given a string s consisting of lowercase letters. Determine if there exists a (contiguous) substring of s that is unbalanced. If the answer is positive, show a position where such a substring occurs in s.

    Constraints

    • 2≦|s|≦105
    • s consists of lowercase letters.

    Partial Score

    • 200 points will be awarded for passing the test set satisfying 2≦N≦100.

    Input

    The input is given from Standard Input in the following format:

    s
    

    Output

    If there exists no unbalanced substring of s, print -1 -1.

    If there exists an unbalanced substring of s, let one such substring be sasa+1…sb (1≦a<b≦|s|), and print a b. If there exists more than one such substring, any of them will be accepted.


    Sample Input 1

    Copy
    needed
    

    Sample Output 1

    Copy
    2 5
    

    The string s2s3s4s5 = eede is unbalanced. There are also other unbalanced substrings. For example, the output 2 6 will also be accepted.


    Sample Input 2

    Copy
    atcoder
    

    Sample Output 2

    Copy
    -1 -1
    

    The string atcoder contains no unbalanced substring.

    题意:给定一个序列,如果某个子序列中的有一个字母的数量大于子序列长度的一半则为平衡序列。

    题解:其实本题只要判断了相邻两个字母是否一样或者间隔一个的字母是否相同就能判断出是否有子序列满足平衡。在往后判断只是重复了上述的情况

     1 #include <iostream>
     2 #include <algorithm>
     3 #include <cstring>
     4 #include <cstdio>
     5 #include <vector>
     6 #include <cstdlib>
     7 #include <iomanip>
     8 #include <cmath>
     9 #include <ctime>
    10 #include <map>
    11 #include <set>
    12 #include <queue>
    13 #include <stack>
    14 using namespace std;
    15 #define lowbit(x) (x&(-x))
    16 #define max(x,y) (x>y?x:y)
    17 #define min(x,y) (x<y?x:y)
    18 #define MAX 100000000000000000
    19 #define MOD 1000000007
    20 #define pi acos(-1.0)
    21 #define ei exp(1)
    22 #define PI 3.141592653589793238462
    23 #define INF 0x3f3f3f3f3f
    24 #define mem(a) (memset(a,0,sizeof(a)))
    25 typedef long long ll;
    26 ll gcd(ll a,ll b){
    27     return b?gcd(b,a%b):a;
    28 }
    29 bool cmp(int x,int y)
    30 {
    31     return x>y;
    32 }
    33 const int N=200005;
    34 const int mod=1e9+7;
    35 int main()
    36 {
    37     std::ios::sync_with_stdio(false);
    38     cin.tie(0);
    39     int flag=0;
    40     string s;
    41     cin>>s;
    42     for(int i=0;i<s.size()-1;i++){
    43         if(s[i]==s[i+1]){
    44             cout<<i+1<<" "<<i+2<<endl;
    45             flag=1;
    46             break;
    47         }
    48         else if(i<s.size()-2&&s[i]==s[i+2]){
    49             cout<<i+1<<" "<<i+3<<endl;
    50             flag=1;
    51             break;
    52         }
    53     }
    54     if(!flag)
    55     cout<<-1<<" "<<-1<<endl;
    56     return 0;
    57 }
  • 相关阅读:
    dubbo源码阅读-服务调用之远程调用(十二)
    dubbo源码阅读-注册中心(十三)之Zookeeper
    dubbo源码阅读-远程暴露(七)之Transport
    dubbo源码阅读-远程暴露(七)之Exchangers
    dubbo源码阅读-服务调用(十二)之本地调用(Injvm)
    dubbo源码阅读-ProxyFactory(十一)之StubProxyFactoryWrapper本地存根
    dubbo源码阅读-服务暴露(七)之本地暴露(Injvm)
    dubbo源码阅读-ProxyFactory(十一)之JavassistFactory
    OpenCV 实现颜色直方图
    FFMPEG结构体分析:AVPacket
  • 原文地址:https://www.cnblogs.com/shixinzei/p/7288439.html
Copyright © 2011-2022 走看看