QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#344615#7970. 三步棋knightzzz1#AC ✓1ms3604kbC++142.0kb2024-03-04 20:28:152024-03-04 20:28:16

Judging History

This is the latest submission verdict.

  • [2024-03-04 20:28:16]
  • Judged
  • Verdict: AC
  • Time: 1ms
  • Memory: 3604kb
  • [2024-03-04 20:28:15]
  • Submitted

answer

#include<bits/stdc++.h>

using namespace std;
 
using ll = long long;
vector<pair<int,int> > v;

bool cmp( pair<int,int> a , pair<int,int> b ){
    if( a.first == b.first ){
        return a.second < b.second ;
    }
    return a.first < b.first ;
}

void solve(){

    int c = 0;
    v.clear() ;
    for(int i = 0; i < 5; ++i)
        for(int j = 0; j < 5; ++j){
            char x;
            cin >> x;
            if(x == 'o'){
                c++ ;
                v.push_back( { i , j } ) ;
            }
        }

    if(c == 2) cout << "Far\n";
    else if( c == 3 || c == 1 )cout << "Away\n";
    else{
        //cout << " sz = " << v.size() << endl;
        // bool fg = true ;
        // for(int i = 0  ; i < 3 ; i ++ ){
        //     if( v[ i ].first != v[ i + 1 ].first ){
        //         fg = false ; break;
        //     }
        // }
        // if( fg ){
        //     cout << "Away\n";return ;
        // }
        // fg = true ;
        // for(int i = 0  ; i < 3 ; i ++ ){
        //     if( v[ i ].second != v[ i + 1 ].second ){
        //         fg = false ; break;
        //     }
        // }
        // if( fg ){
        //     cout << "Away\n";return ;
        // }
        // fg = true ;
        if( v[ 0 ].first == v[ 1 ].first && v[ 0 ].first == v[ 2 ].first && v[ 2 ].first == v[ 3 ].first ){
            cout << "Away\n";return ;
        }
        if( v[ 0 ].second == v[ 1 ].second && v[ 0 ].second == v[ 2 ].second && v[ 2 ].second == v[ 3 ].second ){
            cout << "Away\n";return ;
        }

        sort( v.begin() , v.end() , cmp ) ;
        if( v[ 0 ].first == v[ 1 ].first && v[ 2 ].first == v[ 3 ].first && v[ 0 ].second == v[ 2 ].second ){
            cout << "Away\n";
        }else{
            cout << "Far\n";
        }
    }
}


int main(){
 
    cin.tie(0);
    cout.tie(0);
    ios::sync_with_stdio(false);    

    int T;
    cin >> T;
    while(T--) solve();

    return 0;      
}

详细

Test #1:

score: 100
Accepted
time: 1ms
memory: 3572kb

input:

200
.....
..oo.
.....
.....
.....
.....
.....
oo...
o....
.....
.....
.o...
oo...
.....
.....
.....
.....
o....
oo...
.....
.....
...o.
..oo.
.....
.....
.....
....o
.....
.....
.....
.....
.....
.....
.ooo.
.o...
.....
.....
.....
.....
...oo
.o...
.o...
.o...
.....
.....
.....
.....
..oo.
.....
.....

output:

Far
Away
Away
Away
Away
Away
Far
Far
Away
Far
Away
Far
Far
Away
Far
Away
Far
Away
Away
Away
Far
Away
Far
Away
Away
Away
Away
Far
Far
Far
Far
Away
Far
Away
Far
Away
Far
Away
Away
Far
Away
Away
Far
Far
Away
Far
Far
Away
Far
Away
Away
Away
Away
Away
Away
Far
Away
Far
Away
Away
Away
Away
Far
Away
Far
Fa...

result:

ok 200 lines

Test #2:

score: 0
Accepted
time: 1ms
memory: 3604kb

input:

200
...oo
..oo.
.....
.....
.....
.....
..ooo
....o
.....
.....
.....
o....
oo...
.o...
.....
.....
.ooo.
...o.
.....
.....
.....
.oo..
..oo.
.....
.....
.....
...o.
...o.
...o.
...o.
.....
.oo..
..o..
..o..
.....
..o..
..ooo
.....
.....
.....
.....
.oooo
.....
.....
.....
.....
.....
o....
oo...
o....

output:

Far
Far
Far
Far
Far
Away
Far
Far
Away
Far
Far
Far
Far
Away
Far
Far
Far
Far
Far
Far
Far
Far
Far
Far
Far
Away
Far
Far
Far
Far
Away
Far
Away
Far
Far
Far
Away
Far
Far
Far
Far
Far
Far
Far
Far
Away
Far
Far
Far
Far
Far
Far
Away
Far
Away
Far
Far
Far
Away
Away
Far
Far
Far
Far
Away
Far
Far
Far
Far
Far
Far
Far...

result:

ok 200 lines