QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#88575 | #5501. Ctrl+C Ctrl+V | JerryBlack# | WA | 17ms | 3524kb | C++17 | 9.6kb | 2023-03-16 15:53:48 | 2023-03-16 15:53:49 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
//#pragma GCC optimize(2)
//#pragma GCC optimize(3)
//#pragma GCC optimize("Ofast,unroll-loops")
#define DECIMAL 6
namespace fastIO
{
#ifdef LOCAL
#define DEBUG
#endif
#define BUF_SIZE 100000
#define LL long long
static bool IOerror=false;
#ifdef DEBUG
inline char nc(){char ch=getchar();if(ch==-1)IOerror=1;return ch;}
#else
inline char nc(){static char buf[BUF_SIZE],*p1=buf+BUF_SIZE,*pend=buf+BUF_SIZE;if(p1==pend){p1=buf;pend=buf+fread(buf,1,BUF_SIZE,stdin);if(pend==p1){IOerror=true;return -1;}}return *p1++;}
#endif
inline bool blank(char ch){return ch==' '||ch=='\n'||ch=='\r'||ch=='\t';}
template<class T> inline bool read(T&x){bool sign=false;char ch=nc();x=0;for(;blank(ch);ch=nc());if(IOerror)return false;if(ch=='-')sign=true,ch=nc();for(;ch>='0'&&ch<='9';ch=nc())x=x*10+ch-'0';if(sign)x=-x;return true;}
inline bool read(unsigned long long&x){char ch=nc();x=0;for(;blank(ch);ch=nc());if(IOerror)return false;for(;ch>='0'&&ch<='9';ch=nc())x=x*10+ch-'0';return true;}
inline bool read(unsigned int&x){char ch=nc();x=0;for(;blank(ch);ch=nc());if(IOerror)return false;for(;ch>='0'&&ch<='9';ch=nc())x=x*10+ch-'0';return true;}
inline bool read(double&x){bool sign=false;char ch=nc();x=0;for(;blank(ch);ch=nc());if(IOerror)return false;if(ch=='-')sign=true,ch=nc();for(;ch>='0'&&ch<='9';ch=nc())x=x*10+ch-'0';if(ch=='.'){double tmp=1;ch=nc();for(;ch>='0'&&ch<='9';ch=nc())tmp/=10.0,x+=tmp*(ch-'0');}if(sign)x=-x;return true;}
inline bool read(char*s){char ch=nc();for(;blank(ch);ch=nc());if(IOerror)return false;for(;!blank(ch)&&!IOerror;ch=nc())*s++=ch;*s=0;return true;}
inline bool read(char&c){for(c=nc();blank(c);c=nc());if(IOerror){c=-1;return false;}return true;}
inline bool read(std::string&s){s.clear();char ch=nc();for(;blank(ch);ch=nc());if(IOerror)return false;for(;!blank(ch)&&!IOerror;ch=nc())s+=ch;return true;}
template<class T,class... U> bool read(T&h,U&... t){return read(h)&&read(t...);}
struct Ostream_fwrite
{
#ifdef DEBUG
inline void out(char ch) { putchar(ch); }
#else
char*buf,*p1,*pend;
Ostream_fwrite(){buf=new char[BUF_SIZE];p1=buf;pend=buf+BUF_SIZE;}
inline void out(char ch){if(p1==pend){fwrite(buf,1,BUF_SIZE,stdout);p1=buf;}*p1++=ch;}
#endif
template<class T> inline void print(T x){static char s[41],*s1;s1=s;if(!x)*s1++='0';if(x<0)out('-'),x=-x;while(x)*s1++=x%10+'0',x/=10;while(s1--!=s)out(*s1);}
inline void print(char ch){out(ch);}
inline void print(unsigned long long x){static char s[41],*s1;s1=s;if(!x)*s1++='0';while(x)*s1++=x%10+'0',x/=10;while(s1--!=s)out(*s1);}
inline void print(unsigned int x){static char s[41],*s1;s1=s;if(!x)*s1++='0';while(x)*s1++=x%10+'0',x/=10;while(s1--!=s)out(*s1);}
inline void print(double x,int y=DECIMAL){static LL mul[]={1,10,100,1000,10000,100000,1000000,10000000,100000000,1000000000,10000000000LL,100000000000LL,1000000000000LL,10000000000000LL,100000000000000LL,1000000000000000LL,10000000000000000LL,100000000000000000LL};if(x<-1e-12)out('-'),x=-x;x*=mul[y];LL x1=(LL)floor(x);if(x-floor(x)>=0.5)++x1;LL x2=x1/mul[y],x3=x1-x2*mul[y];print(x2);if(y>0){out('.');for(size_t i=1;i<y&&x3*mul[i]<mul[y];out('0'),++i);print(x3);}}
inline void print(char*s){while(*s)out(*s++);}
inline void print(const char*s){while(*s)out(*s++);}
inline void print(std::string s){print(s.c_str());}
#ifndef DEBUG
inline void flush(){if(p1!=buf){fwrite(buf,1,p1-buf,stdout);p1=buf;}}
~Ostream_fwrite(){flush();}
#endif // !DEBUG
}Ostream;
template<class T> inline void print(T x){Ostream.print(x);}
template<class T> inline void println(T x){Ostream.print(x);Ostream.out('\n');}
inline void print(double x,int y=DECIMAL){Ostream.print(x,y);}
inline void println(double x,int y=DECIMAL){Ostream.print(x,y);Ostream.out('\n');}
template<class T,class... U> void print(const T&h,const U&... t){print(h);Ostream.out(' ');print(t...);}
template<class T,class... U> void println(const T&h,const U&... t){print(h);Ostream.out(' ');println(t...);}
#ifndef DEBUG
inline void flush(){Ostream.flush();}
#endif
#undef LL
#undef DECIMAL
#undef BUF_SIZE
//本地 getchar/putchar ,提交 fread/fwrite
//本地支持终端交互输入输出
}
using namespace fastIO;
#define ll long long
#define ull unsigned ll
#define fi first
#define se second
const double eps=1e-9;
const int inf=0x3f3f3f3f;
const ll INF=0x3f3f3f3f3f3f3f3f;
mt19937 rnd(time(0));
int P=1e9+9;
namespace modint
{
int norm(int x){if(x<0)x+=P;if(x>=P)x-=P;return x;}
template<class T>
T power(T a,ll n){T ans=1;while(n){if(n&1)ans=ans*a;a=a*a;n>>=1;}return ans;}
struct Z
{
int x;
Z(int x=0):x(norm(x)){}
Z(ll x):x(norm(x%P)){}
int val() const{return x;}
Z operator-() const{return Z(norm(P-x));}
Z inv() const{assert(x!=0);return power(*this,P-2);}
Z&operator*=(const Z&rhs){x=(ll)x*rhs.x%P;return *this;}
Z&operator+=(const Z&rhs){x=norm(x+rhs.x);return *this;}
Z&operator-=(const Z&rhs){x=norm(x-rhs.x);return *this;}
Z&operator/=(const Z&rhs){return *this*=rhs.inv();}
friend Z operator*(const Z&lhs,const Z&rhs){Z res=lhs;res*=rhs;return res;}
friend Z operator+(const Z&lhs,const Z&rhs){Z res=lhs;res+=rhs;return res;}
friend Z operator-(const Z&lhs,const Z&rhs){Z res=lhs;res-=rhs;return res;}
friend Z operator/(const Z&lhs,const Z&rhs){Z res=lhs;res/=rhs;return res;}
friend istream&operator>>(istream&is,Z&a){ll v;is>>v;a=Z(v);return is;}
friend ostream&operator<<(ostream&os,const Z&a){return os<<a.val();}
};
}
using namespace modint;
#define int ll
void solve()
{
string s;
cin>>s;
int ans=0;
int n=s.size();
char pre=' ';
for(int i=0;i<n;i++)
{
int cnt=0;
int j=i;
while(j<n)
{
if(pre==' '&&s[j]=='a')pre=s[j],j++;
else if(pre=='a'&&s[j]=='n')pre=s[j],j++;
else if(pre=='n'&&s[j]=='i')pre=s[j],j++;
else if(pre=='i'&&s[j]=='a')pre=s[j],j++,cnt++;
else break;
}
ans+=cnt/2+cnt%2;
pre=' ';
if(cnt)i=j-1;
else i=j;
// cout<<"i="<<i<<" j="<<j<<'\n';
// cout.flush();
}
cout<<ans<<'\n';
}
#undef int
int main()
{
ios::sync_with_stdio(false);cin.tie(nullptr);
cout<<fixed<<setprecision(15);
int _;cin>>_;while(_--)
{
solve();
}
return 0;
}
/* ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┬───┐
* │Esc│ │ F1│ F2│ F3│ F4│ │ F5│ F6│ F7│ F8│ │ F9│F10│F11│F12│ │P/S│S/L│P/B│ │Cal│ │ │ │
* └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘ └───┴───┴───┴───┘
* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐ ┌───┬───┬───┬───┐
* │~ `│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│ BacSp │ │Ins│Hom│PUp│ │Num│ / │ * │ - │
* ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤ ├───┼───┼───┼───┤
* │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│ | \ │ │Del│End│PDn│ │ 7 │ 8 │ 9 │ │
* ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘ ├───┼───┼───┤ + │
* │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter │ │ 4 │ 5 │ 6 │ │
* ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ ┌───┐ ├───┼───┼───┼───┤
* │ Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│ Shift │ │ ↑ │ │ 1 │ 2 │ 3 │ │
* ├─────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ ┌───┼───┼───┐ ├───┴───┼───┤ E││
* │ Ctrl│ Win│ Alt│ Space │ Alt│ Win│ Fn │Ctrl│ │ ← │ ↓ │ → │ │ 0 │ . │←─┘│
* └─────┴────┴────┴───────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘ └───────┴───┴───┘
*/
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 3404kb
input:
3 aniasieurodzilaapotemnicsieniedzialo nicciekawegouanianiagnieszkianialicji jeszczekrotszaautobiografiaani
output:
1 2 0
result:
ok 3 lines
Test #2:
score: -100
Wrong Answer
time: 17ms
memory: 3524kb
input:
10000 aniaanianianianiaviananibnianianianianianiapianianianianianianiaanianianianiananianianianiananifw ananiacnganiaaywbwrkaniahaniaganiaglljaniaouaqrdyaniaypvsgjltrbcvjssrtnehqfzpfvaniahwaniauzncovwfmiqejteiuaniacblxyfikauptesitsitvananianiajndy anianianianianianiaanianianianianiaanianianianianiaa...
output:
13 10 53 16 4 12 27 1 25 5 13 14 45 7 74 32 57 60 13 11 19 14 12 6 72 3 16 9 42 60 11 17 8 3 18 21 8 64 12 26 51 16 3 8 26 69 3 19 27 20 17 12 28 2 23 1 16 12 67 47 18 8 2 6 20 19 72 1 59 52 6 11 47 8 4 18 67 17 14 11 12 4 72 15 24 8 15 76 8 22 70 7 44 15 22 21 8 51 62 11 1 8 7 4 28 74 0 24 11 14 32...
result:
wrong answer 2nd lines differ - expected: '11', found: '10'