708ms,还有优化空间吗

P10815 【模板】快速读入

@[nr0728](/user/682739) 不是被举报多了被删可以请求恢复吗?
by lao_wang @ 2024-09-05 11:11:47


@[lao_wang](/user/701408) 陈哲不干
by nr0728 @ 2024-09-05 11:12:32


@[nr0728](/user/682739) 唐
by lao_wang @ 2024-09-05 11:13:22


@[lao_wang](/user/701408) 你不信问陈哲
by nr0728 @ 2024-09-05 11:15:32


@[rsy_](/user/550775) 《套取数据,建议封号》
by nr0728 @ 2024-09-05 11:22:48


https://www.luogu.com.cn/record/169585429
by rsy_ @ 2024-09-05 11:23:01


这个应该不是套取数据
by rsy_ @ 2024-09-05 11:23:38


@[nr0728](/user/682739) 改了一点细节,应该能更优 ```cpp #include <cstdint> #include <cstring> #include <iostream> #include <sys/mman.h> #include <sys/stat.h> main() { struct stat st; fstat(0,&st); auto c=(char*)mmap(nullptr,st.st_size,1,2,0,0); auto n=0u; while (*c>47)n=n*10+(*c++-48);++c;++c; int s=0; unsigned a[0x10000],v,p; memset(a, -1, 0x40000); for(int i=48;i<=57;i++) for(int j=48;j<=57;j++) a[(i<<8)+j]=(j-48)*10+(i-48); for(;n--;c++) { v=p=0; c+=p=*c==45; while(~a[*(uint16_t*)(c)])v=v*100+a[*(uint16_t*)(c)],c+=2; if(*c>='0')v=v*10+((*c++)^48); s+=p?-v:v; } printf("%d",s); } ```
by _s_z_y_ @ 2024-09-05 11:23:41


说明肯定是有优化空间的((
by rsy_ @ 2024-09-05 11:23:51


我收回之前的话,cz还是很良心的
by nr0728 @ 2024-09-05 12:25:09


|