#pragma GCC optimize("Ofast") #pragma GCC target("avx2") typedef unsigned long ulong; ulong f1(){ char*mmap(); char*rp=mmap(0l,1l<<25,1,2,0,0ll); while(*rp++!=10); long a1=0,a9=0,z=0; for(long c;c=*rp++,c>='0';){ if(c=='1'){ ++a1; }else if(c=='9'){ if(a1){ --a1; ++z; }else{ ++a9; } }else{ ++z; } } return z+(a9>>=1,a1>=a9?a9+(a1-a9>>1):a1); } void f2(ulong z){ char wbuf[64],*wp=wbuf+sizeof wbuf; do*--wp=z%10+48;while(z/=10); write(1,wp,wbuf+sizeof wbuf-wp); _exit(0); } int main(){ f2(f1()); return 0; }