然而并没有楼下
by QAQ永动机 @ 2019-01-16 19:45:57
[游戏集合](https://www.luogu.org/blog/scxxvsd)
by zzhhtt @ 2019-01-16 19:46:53
```cpp
#include<bits/stdc++.h>
using namespace;
int a,b;
int main(){
cin>>a>>b;
cout<<a+b;
}
```
by QAQ永动机 @ 2019-01-16 19:47:24
逃
by QAQ永动机 @ 2019-01-16 19:47:32
前排吃瓜并坐等memset0
by RiverFun @ 2019-01-16 19:53:57
坐等memset0
by vocaloid @ 2019-01-16 19:54:41
【怎么天天有人发游戏的 这么无聊吗 全都 $\text{NOIP}1$= 了?】
by vocaloid @ 2019-01-16 19:55:26
厉害
by x_angelkawaii_x @ 2019-01-16 19:55:52
@[miaozhizhiwu](/space/show?uid=175262) 这就是你水一贴的理由?
by rEdWhitE_uMbrElla @ 2019-01-16 19:56:03
正宗AI三连棋```cpp
#include<bits/stdc++.h>
using namespace std;
int n,k,x,y,a[10][10],b[10][10];
void ai(){
b[1][1]=3;
b[1][2]=1;
b[1][3]=3;
b[2][1]=1;
b[2][2]=5;
b[2][3]=1;
b[3][1]=3;
b[3][2]=1;
b[3][3]=3;
for(int i=1;i<=3;i++){
if(a[i][1]+a[i][2]+a[i][3]==-2)
for(int j=1;j<=3;j++)b[i][j]+=100;
if(a[1][i]+a[2][i]+a[3][i]==-2)
for(int j=1;j<=3;j++)b[j][i]+=100;
if(a[i][1]+a[i][2]+a[i][3]==2)
for(int j=1;j<=3;j++)b[i][j]+=50;
if(a[1][i]+a[2][i]+a[3][i]==2)
for(int j=1;j<=3;j++)b[j][i]+=50;
if(a[i][1]+a[i][2]+a[i][3]==-1)
for(int j=1;j<=3;j++)b[i][j]+=20;
if(a[1][i]+a[2][i]+a[3][i]==-1)
for(int j=1;j<=3;j++)b[j][i]+=20;
if(a[i][1]+a[i][2]+a[i][3]==1)
for(int j=1;j<=3;j++)b[i][j]+=10;
if(a[1][i]+a[2][i]+a[3][i]==1)
for(int j=1;j<=3;j++)b[j][i]+=10;
}
if(a[1][1]+a[2][2]+a[3][3]==-2)
for(int i=1;i<=3;i++)b[i][i]+=100;
if(a[1][1]+a[2][2]+a[3][3]==2)
for(int i=1;i<=3;i++)b[i][i]+=50;
if(a[1][1]+a[2][2]+a[3][3]==-1)
for(int i=1;i<=3;i++)b[i][i]+=20;
if(a[1][1]+a[2][2]+a[3][3]==1)
for(int i=1;i<=3;i++)b[i][i]+=10;
if(a[1][3]+a[2][2]+a[3][1]==-2)
for(int i=1;i<=3;i++)b[i][4-i]+=100;
if(a[1][3]+a[2][2]+a[3][1]==2)
for(int i=1;i<=3;i++)b[i][4-i]+=50;
if(a[1][3]+a[2][2]+a[3][1]==-1)
for(int i=1;i<=3;i++)b[i][4-i]+=20;
if(a[1][3]+a[2][2]+a[3][1]==1)
for(int i=1;i<=3;i++)b[i][4-i]+=10;
}
int pd(){
for(int i=1;i<=3;i++){
if(a[i][1]==a[i][2]&&a[i][2]==a[i][3]&&a[i][1]!=0)
return 1;
if(a[1][i]==a[2][i]&&a[2][i]==a[3][i]&&a[1][i]!=0)
return 1;
}
if(a[1][1]==a[2][2]&&a[2][2]==a[3][3]&&a[1][1]!=0)return 1;
if(a[1][3]==a[2][2]&&a[2][2]==a[3][1]&&a[2][2]!=0)return 1;
return 0;
}
int main(){
k=-1;
cout<<" 你 :P(Player),后手;"<<endl;
cout<<"人工智能: A(AI) ,先手."<<endl;
char s[1];
gets(s);
srand(time(0));
int p=rand()%14;
if(p<9){
a[p%3+1][p/3+1]=-1;
cout<<"人工智能落子:"<<p%3+1<<" "<<p/3+1;
}
else{
a[2][2]=-1;
cout<<"人工智能落子:2 2"<<endl;
}
while(n<8){
cout<<endl;
n++;
k=-k;
cout<<" 1 2 3"<<endl;
for(int i=1;i<=3;i++){
cout<<" "<<i<<" ";
for(int j=1;j<=3;j++)
if(a[i][j]==1)cout<<"P ";
else if(a[i][j]==-1)cout<<"A ";
else cout<<"O ";
cout<<endl;
}
if(pd()){
if(k==-1)
cout<<"玩家获胜!"<<endl;
else cout<<"人工智能获胜!"<<endl;
getchar();
return 0;
}
cout<<endl;
if(k==1){
cout<<"玩家落子:";
while(1){
cin>>x>>y;
if(a[x][y]==0)break;
cout<<"违例!请重新落子:";
}
a[x][y]=1;
}
if(k==-1){
cout<<"人工智能落子:";
ai();
int now=0;
for(int i=1;i<=3;i++)
for(int j=1;j<=3;j++)
if(a[i][j]==0&&b[i][j]>now){
now=b[i][j];
x=i;
y=j;
}
cout<<x<<" "<<y<<endl;
a[x][y]=-1;
}
}
cout<<" 1 2 3"<<endl;
for(int i=1;i<=3;i++){
cout<<" "<<i<<" ";
for(int j=1;j<=3;j++)
if(a[i][j]==1)cout<<"P ";
else if(a[i][j]==-1)cout<<"A ";
else cout<<"O ";
cout<<endl;
}
if(pd())
if(k==-1)cout<<"玩家获胜!"<<endl;
else cout<<"人工智能获胜!"<<endl;
else cout<<"平局!"<<endl;
getchar();
return 0;
}
```
by Loser_King @ 2019-01-16 20:00:01