#include <iostream>
using namespace std;
long long zlicz=1;
long long abc[3];
int wyr[3000];
string wyraz;
bool check (int a, int b, int c)
{
if((a==0&&b==0&&c>0)||(b==0&&c==0&&a>0)||(a==0&&c==0&&b>0))
return 1;
else
{
if((a==b&&b==c)||(a==0&&b==c)||(b==0&&a==c)||(c==0&&a==b))
return 1;
else
return 0;
}
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
cin>>wyraz;
for(int j=0; j<wyraz.size(); j++)
{
if(wyraz[j]=='a')
wyr[j]=0;
if(wyraz[j]=='b')
wyr[j]=1;
if(wyraz[j]=='c')
wyr[j]=2;
}
// for(int j=0;j<wyraz.size();j++)
// cout<<wyr[j];
if(wyraz[0]=='a')
abc[0]++;
if(wyraz[0]=='b')
abc[1]++;
if(wyraz[0]=='c')
abc[2]++;
for(int i=1; i<wyraz.size(); i++)
{
zlicz++;
int a=0,b=0,c=0;
if(wyr[i]==0)
a++;
if(wyr[i]==1)
b++;
if(wyr[i]==2)
c++;
for(int k=i-1; k>=0; k--)
{
if(wyr[k]==0)
a++;
if(wyr[k]==1)
b++;
if(wyr[k]==2)
c++;
if(check(a,b,c)==1)
{
zlicz++;
// cout<<a<<" "<<b<<" "<<c<<endl;
// cout<<k<<" "<<i<<endl;
}
}
//cout<<" "<<i<<" "<<zlicz<<endl;
}
cout<<zlicz<<endl;
return 0;
}
//ta sama +1 +ilea
//rozna +1 +1 +ile
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | #include <iostream> using namespace std; long long zlicz=1; long long abc[3]; int wyr[3000]; string wyraz; bool check (int a, int b, int c) { if((a==0&&b==0&&c>0)||(b==0&&c==0&&a>0)||(a==0&&c==0&&b>0)) return 1; else { if((a==b&&b==c)||(a==0&&b==c)||(b==0&&a==c)||(c==0&&a==b)) return 1; else return 0; } } int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin>>wyraz; for(int j=0; j<wyraz.size(); j++) { if(wyraz[j]=='a') wyr[j]=0; if(wyraz[j]=='b') wyr[j]=1; if(wyraz[j]=='c') wyr[j]=2; } // for(int j=0;j<wyraz.size();j++) // cout<<wyr[j]; if(wyraz[0]=='a') abc[0]++; if(wyraz[0]=='b') abc[1]++; if(wyraz[0]=='c') abc[2]++; for(int i=1; i<wyraz.size(); i++) { zlicz++; int a=0,b=0,c=0; if(wyr[i]==0) a++; if(wyr[i]==1) b++; if(wyr[i]==2) c++; for(int k=i-1; k>=0; k--) { if(wyr[k]==0) a++; if(wyr[k]==1) b++; if(wyr[k]==2) c++; if(check(a,b,c)==1) { zlicz++; // cout<<a<<" "<<b<<" "<<c<<endl; // cout<<k<<" "<<i<<endl; } } //cout<<" "<<i<<" "<<zlicz<<endl; } cout<<zlicz<<endl; return 0; } //ta sama +1 +ilea //rozna +1 +1 +ile |
English