总显示运行时错误,哪位大佬能找找错
  • 板块P1838 三子棋I
  • 楼主M_120
  • 当前回复1
  • 已保存回复1
  • 发布时间2022/7/10 10:44
  • 上次更新2023/10/27 21:16:12
查看原帖
总显示运行时错误,哪位大佬能找找错
662884
M_120楼主2022/7/10 10:44
#include<bits/stdc++.h>
using namespace std;
int mapp[10][10];
int sit[100][100]={{1,1},{2,1},{3,1},{1,2},{2,2},{2,3},{1,3},{2,3},{3,3}};
int main(){
    char a[100];
    cin>>a;
    for(int i=0;i<=9;i=i+2){
        int ax=sit[(a[i]-'1')][0];
        int ay=sit[(a[i]-'1')][1];
        mapp[ax][ay]=1;
    }
    for(int i=1;i<=8;i=i+2){
        int ax=sit[(a[i]-'0')][0];
        int ay=sit[(a[i]-'0')][1];
        mapp[ax][ay]=2;
    }
    //一行横
    if(mapp[1][1]==mapp[2][1]&&mapp[2][1]==mapp[3][1]){
        if(mapp[1][1]==1)cout<<"xiaoa wins.";
        else cout<<"uim wins.";
        return 0;
    }
    //二行横
    if(mapp[1][2]==mapp[2][2]&&mapp[2][2]==mapp[3][2]){
        if(mapp[1][2]==1)cout<<"xiaoa wins.";
        else cout<<"uim wins.";
        return 0;
    }
    //三行横
    if(mapp[1][3]==mapp[2][3]&&mapp[2][3]==mapp[3][3]){
        if(mapp[1][3]==1)cout<<"xiaoa wins.";
        else cout<<"uim wins.";
        return 0;
    }
    
    //一列竖
    if(mapp[1][1]==mapp[1][2]&&mapp[1][2]==mapp[1][3]){
        if(mapp[1][1]==1)cout<<"xiaoa wins.";
        else cout<<"uim wins.";
        return 0;
    }
    //二列竖
    if(mapp[2][1]==mapp[2][2]&&mapp[2][2]==mapp[2][3]){
        if(mapp[1][1]==1)cout<<"xiaoa wins.";
        else cout<<"uim wins.";
        return 0;
    }
    //三行竖
    if(mapp[3][1]==mapp[3][2]&&mapp[3][2]==mapp[3][3]){
        if(mapp[1][1]==1)cout<<"xiaoa wins.";
        else cout<<"uim wins.";
        return 0;
    }
    
    //左-->右
    if(mapp[1][1]==mapp[2][2]&&mapp[2][2]==mapp[3][3]){
        if(mapp[1][1]==1)cout<<"xiaoa wins.";
        else cout<<"uim wins.";
        return 0;
    }
    //右-->左
    if(mapp[3][1]==mapp[2][2]&&mapp[2][2]==mapp[1][3]){
        if(mapp[1][1]==1)cout<<"xiaoa wins.";
        else cout<<"uim wins.";
        return 0;
    }
    cout<<"drew.";
    return 0;
}
2022/7/10 10:44
加载中...