📄 listpos.h
字号:
#define listposfun\
for(int i=1;i<=boardsize;i++)\
{\
int ti=0,tj=0,j=1;\
do{\
if(datat[i][j]==0)\
{\
for(;datat[i][j]==0&&j<=boardsize;j++);\
if(j>boardsize)\
break;\
else if(datat[i][j]==-side&&j<=boardsize)\
{\
ti=i,tj=j-1;\
for(;datat[i][j]==-side&&j<=boardsize;j++);\
if(j>boardsize)\
break;\
else if(datat[i][j]==side)\
{\
pos[ti][tj]+=1;\
}\
continue;\
}\
else\
continue;\
}\
else if(datat[i][j]==side)\
{\
for(;datat[i][j]==side&&j<=boardsize;j++);\
if(j>boardsize)\
break;\
else if(datat[i][j]==-side&&j<=boardsize)\
{\
for(;datat[i][j]==-side&&j<=boardsize;j++);\
if(j>boardsize)\
break;\
else if(datat[i][j]==0)\
{\
pos[i][j]+=16;\
}\
continue;\
}\
else\
continue;\
}\
else if(datat[i][j]==-side)\
{\
for(;datat[i][j]==-side&&j<=boardsize;j++);\
}\
else \
cout<<"error in if and else!";\
}\
while(j<=boardsize);\
};\
for(int n=3;n<=boardsize;n++)\
{\
int ti=0,tj=0,i=n,j=1;\
do{\
if(datat[i][j]==0)\
{\
for(;datat[i][j]==0&&i>=1;i--,j++);\
if(i<1)\
break;\
else if(datat[i][j]==-side&&i>=1)\
{\
ti=i+1,tj=j-1;\
for(;datat[i][j]==-side&&i>=1;i--,j++);\
if(i<1)\
break;\
else if(datat[i][j]==side)\
{\
pos[ti][tj]+=128;\
}\
continue;\
}\
else\
continue;\
}\
else if(datat[i][j]==side)\
{\
for(;datat[i][j]==side&&i>=1;i--,j++);\
if(i<1)\
break;\
else if(datat[i][j]==-side&&i>=1)\
{\
for(;datat[i][j]==-side&&i>=1;i--,j++);\
if(i<1)\
break;\
else if(datat[i][j]==0)\
{\
pos[i][j]+=8;\
}\
continue;\
}\
else\
continue;\
}\
else if(datat[i][j]==-side)\
{\
for(;datat[i][j]==-side&&i>=1;i--,j++);\
}\
else \
cout<<"error in if and else!";\
}\
while(i>=1);\
}\
int bs1356=boardsize-2;\
for(n=2;n<=bs1356;n++)\
{\
int ti=0,tj=0,i=boardsize,j=n;\
do{\
if(datat[i][j]==0)\
{\
for(;datat[i][j]==0&&j<=boardsize;i--,j++);\
if(j>boardsize)\
break;\
else if(datat[i][j]==-side&&j<=boardsize)\
{\
ti=i+1,tj=j-1;\
for(;datat[i][j]==-side&&j<=boardsize;i--,j++);\
if(j>boardsize)\
break;\
else if(datat[i][j]==side)\
{\
pos[ti][tj]+=128;\
}\
continue;\
}\
else\
continue;\
}\
else if(datat[i][j]==side)\
{\
for(;datat[i][j]==side&&j<=boardsize;i--,j++);\
if(j>boardsize)\
break;\
else if(datat[i][j]==-side&&j<=boardsize)\
{\
for(;datat[i][j]==-side&&j<=boardsize;i--,j++);\
if(j>boardsize)\
break;\
else if(datat[i][j]==0)\
{\
pos[i][j]+=8;\
}\
continue;\
}\
else\
continue;\
}\
else if(datat[i][j]==-side)\
{\
for(;datat[i][j]==-side&&j<=boardsize;i--,j++);\
}\
else \
cout<<"error in if and else!";\
}\
while(j<=boardsize);\
}\
for(n=3;n<=boardsize;n++)\
{\
int ti=0,tj=0,j=n,i=boardsize;\
do{\
if(datat[i][j]==0)\
{\
for(;datat[i][j]==0&&j>=1;i--,j--);\
if(j<1)\
break;\
else if(datat[i][j]==-side&&j>=1)\
{\
ti=i+1,tj=j+1;\
for(;datat[i][j]==-side&&j>=1;i--,j--);\
if(j<1)\
break;\
else if(datat[i][j]==side)\
{\
pos[ti][tj]+=32;\
}\
continue;\
}\
else\
continue;\
}\
else if(datat[i][j]==side)\
{\
for(;datat[i][j]==side&&j>=1;i--,j--);\
if(j<1)\
break;\
else if(datat[i][j]==-side&&j>=1)\
{\
for(;datat[i][j]==-side&&j>=1;i--,j--);\
if(j<1)\
break;\
else if(datat[i][j]==0)\
{\
pos[i][j]+=2;\
}\
continue;\
}\
else\
continue;\
}\
else if(datat[i][j]==-side)\
{\
for(;datat[i][j]==-side&&j>=1;i--,j--);\
}\
else \
cout<<"error in if and else!";\
}\
while(j>=1);\
}\
for(n=boardsize-1;n>=3;n--)\
{\
int ti=0,tj=0,i=n,j=boardsize;\
do{\
if(datat[i][j]==0)\
{\
for(;datat[i][j]==0&&i>=1;i--,j--);\
if(i<1)\
break;\
else if(datat[i][j]==-side&&i>=1)\
{\
ti=i+1,tj=j+1;\
for(;datat[i][j]==-side&&i>=1;i--,j--);\
if(i<1)\
break;\
else if(datat[i][j]==side)\
{\
pos[ti][tj]+=32;\
}\
continue;\
}\
else\
continue;\
}\
else if(datat[i][j]==side)\
{\
for(;datat[i][j]==side&&i>=1;i--,j--);\
if(i<1)\
break;\
else if(datat[i][j]==-side&&i>=1)\
{\
for(;datat[i][j]==-side&&i>=1;i--,j--);\
if(i<1)\
break;\
else if(datat[i][j]==0)\
{\
pos[i][j]+=2;\
}\
continue;\
}\
else\
continue;\
}\
else if(datat[i][j]==-side)\
{\
for(;datat[i][j]==-side&&i>=1;i--,j--);\
}\
else \
cout<<"error in if and else!";\
}\
while(i>=1);\
}\
for(int j=1;j<=boardsize;j++)\
{\
int ti=0,tj=0,i=1;\
do{\
if(datat[i][j]==0)\
{\
for(;datat[i][j]==0&&i<=boardsize;i++);\
if(i>boardsize)\
break;\
else if(datat[i][j]==-side&&i<=boardsize)\
{\
ti=i-1,tj=j;\
for(;datat[i][j]==-side&&i<=boardsize;i++);\
if(i>boardsize)\
break;\
else if(datat[i][j]==side)\
{\
pos[ti][tj]+=4;\
}\
continue;\
}\
else\
continue;\
}\
else if(datat[i][j]==side)\
{\
for(;datat[i][j]==side&&i<=boardsize;i++);\
if(i>boardsize)\
break;\
else if(datat[i][j]==-side&&i<=boardsize)\
{\
for(;datat[i][j]==-side&&i<=boardsize;i++);\
if(i>boardsize)\
break;\
else if(datat[i][j]==0)\
{\
pos[i][j]+=64;\
}\
continue;\
}\
else\
continue;\
}\
else if(datat[i][j]==-side)\
{\
for(;datat[i][j]==-side&&i<=boardsize;i++);\
}\
else \
cout<<"error in if and else!";\
}\
while(i<=boardsize);\
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -