238732026-01-31 11:02:53KristófDNScpp17Hibás válasz 20/409ms708 KiB
// Source: https://usaco.guide/general/io

#include <bits/stdc++.h>
using namespace std;

int main() {
	string s;
    cin>>s;
    int n=s.size();
    int cntg=0;
    int ans=0;
    for(int i=0;i<n;i++)
        {
        if(s[i]=='G')
            {
            int cnt=1;
            int start=i;
            while(cnt>=0 && i<n-1)
                {
                i++;
                if(s[i]!='G')cnt--;
                else cnt++;
                }
            if(cnt==0)
                cntg=max(cntg,-start+i+1);
            else cntg=max(cntg,min(n,-start+i+1+cnt));
            }
        }
    ans=max(cntg,ans);
    cntg=0;
    for(int i=0;i<n;i++)
        {
        if(s[i]=='A')
            {
            int cnt=1;
            int start=i;
            while(cnt>=0 && i<n-1)
                {
                i++;
                if(s[i]!='A')cnt--;
                else cnt++;
                }
            if(cnt==0)
                cntg=max(cntg,-start+i+1);
            else cntg=max(cntg,min(n,-start+i+1+cnt));
            }
        }
    ans=max(cntg,ans);
    cntg=0;
    for(int i=0;i<n;i++)
        {
        if(s[i]=='C')
            {
            int cnt=1;
            int start=i;
            while(cnt>=0 && i<n-1)
                {
                i++;
                if(s[i]!='C')cnt--;
                else cnt++;
                }
            if(cnt==0)
                cntg=max(cntg,-start+i+1);
            else cntg=max(cntg,min(n,-start+i+1+cnt));
            }
        }
    ans=max(cntg,ans);
    cntg=0;
    for(int i=0;i<n;i++)
        {
        if(s[i]=='T')
            {
            int cnt=1;
            int start=i;
            while(cnt>=0 && i<n-1)
                {
                i++;
                if(s[i]!='T')cnt--;
                else cnt++;
                }
            if(cnt==0)
                cntg=max(cntg,-start+i+1);
            else cntg=max(cntg,min(n,-start+i+1+cnt));
            }
        }
    ans=max(cntg,ans);
    cout<<ans;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base20/40
1Elfogadva0/01ms316 KiB
2Hibás válasz0/09ms704 KiB
3Hibás válasz0/21ms316 KiB
4Elfogadva2/21ms508 KiB
5Hibás válasz0/21ms316 KiB
6Hibás válasz0/21ms316 KiB
7Hibás válasz0/21ms316 KiB
8Hibás válasz0/43ms508 KiB
9Hibás válasz0/44ms564 KiB
10Hibás válasz0/44ms624 KiB
11Elfogadva4/46ms564 KiB
12Elfogadva4/44ms564 KiB
13Elfogadva5/56ms708 KiB
14Elfogadva5/57ms704 KiB