#include<bits/stdc++.h>
#define fastio ios::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
#define pi 3.14285714285
#define pb push_back
#define ppb pop_back
#define mpr make_pair
#define ll long long
#define ld long double
#define pr pair
#define endll endl
#define ff first
#define ss second
#define fo(i,a,n) for ( int i = a; i < n; i++ )
#define setbits(x) __builtin_popcountll(x)
#define zrobits(x) __builtin_ctzll(x)
using namespace std;
#define mod 1000000007
bool comp(pair<int,int>&a , pair<int,int>&b){ return a.ss < b.ss; }
vector<int> read(int n) { vector<int>v; for(int i=0 ; i<n ; i++){int x; cin >>x; v.pb(x);} return v;}
int fib(int n) { if(n<=1) return n; return fib(n-1)+fib(n-2);}
ll _lcm(ll x,ll y) {return x*y/__gcd(x,y);}
ll _gcd(ll a,ll b) {return a%b==0 ? b : _gcd(b,a%b);}
// sieve of erasthonses
vector<ll> prm;
void Sieve(ll n)
{
bool prime[n+1];
memset(prime,true, sizeof(prime));
prime[0]=false;
prime[1]=false;
for(ll p=2;p*p<=n;p++)
{
if(prime[p]==true)
{
for(ll i=p*p;i<=n;i+=p)
{
prime[i]=false;
}
}
}
if(!prm.empty())
{
prm.clear();
}
for(ll p=2;p<=n;p++)
{
if(prime[p])
{
prm.push_back(p);
}
}
}
void solve()
{
int t;
cin >> t;
while(t--)
{
string s;
cin >> s;
int n = s.size();
int cnt=1,curr=0;
map<char,int> mp;
for(int i=0 ; i<n ; i++)
{
mp[s[i]]++;
if(curr<=3)
{
if(mp[s[i]]==1)
{
curr++;
}
}
else
{
cnt++;
curr=0;
}
}
cout<<cnt<<"\n";
}
}
int main()
{
fastio;
solve();
return 0;
} Write, Run & Share C++ code online using OneCompiler's C++ online compiler for free. It's one of the robust, feature-rich online compilers for C++ language, running on the latest version 17. Getting started with the OneCompiler's C++ compiler is simple and pretty fast. The editor shows sample boilerplate code when you choose language as C++ and start coding!
OneCompiler's C++ online compiler supports stdin and users can give inputs to programs using the STDIN textbox under the I/O tab. Following is a sample program which takes name as input and print your name with hello.
#include <iostream>
#include <string>
using namespace std;
int main()
{
string name;
cout << "Enter name:";
getline (cin, name);
cout << "Hello " << name;
return 0;
}
C++ is a widely used middle-level programming language.
When ever you want to perform a set of operations based on a condition If-Else is used.
if(conditional-expression) {
//code
}
else {
//code
}
You can also use if-else for nested Ifs and If-Else-If ladder when multiple conditions are to be performed on a single variable.
Switch is an alternative to If-Else-If ladder.
switch(conditional-expression){
case value1:
// code
break; // optional
case value2:
// code
break; // optional
......
default:
code to be executed when all the above cases are not matched;
}
For loop is used to iterate a set of statements based on a condition.
for(Initialization; Condition; Increment/decrement){
//code
}
While is also used to iterate a set of statements based on a condition. Usually while is preferred when number of iterations are not known in advance.
while (condition) {
// code
}
Do-while is also used to iterate a set of statements based on a condition. It is mostly used when you need to execute the statements atleast once.
do {
// code
} while (condition);
Function is a sub-routine which contains set of statements. Usually functions are written when multiple calls are required to same set of statements which increases re-usuability and modularity. Function gets run only when it is called.
return_type function_name(parameters);
function_name (parameters)
return_type function_name(parameters) {
// code
}