#pragma GCC optimize("Ofast") #pragma GCC target("avx2") char*mmap(); #define wt(v) {long _z=v;do*--wp=_z%10+48;while(_z/=10);} main(){ char*rp=mmap(0l,1l<<25,1,2,0,0ll); long x=0,y=0; while(*rp){ int c=*(int*)rp++; if((char)c=='S'){ ++x; } if((c&0xffffff)=='gni'){ y+=x; } } char wbuf[64],*wp=wbuf+sizeof wbuf; wt(y); write(1,wp,wbuf+sizeof wbuf-wp); _exit(0); }