昨天借同学的打表代码优化了一下卡到了27毫秒,不知道该怎么优化
代码如下:
#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
int main(void) {
unsigned long long k=3472329400101713463;
register char *n;
char c,d,e;
register char a=(char*)&k;
fread(&c,3,1,stdin);
n=&c;
if(*n=='1') {
fwrite("81",1,2,stdout);
fflush(stdout);
_exit(0);
}
if(*n=='2'){
n+=2;
if((*n)&1) putchar(50);
else putchar(54);
fflush(stdout);
_exit(0);
}
putchar((k>>((*n-51)<<3))&0xff);
fflush(stdout);
_exit(0);
}
测试情况