답안 #260852

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
260852 2020-08-11T05:54:02 Z 최은수(#5044) 길고양이 (JOI20_stray) C++17
15 / 100
73 ms 16744 KB
#include"Anthony.h"
#include<iostream>
#include<vector>
#include<queue>
#include<algorithm>
#define ep emplace
#define eb emplace_back
#define fi first
#define se second
#define all(x) (x).begin(),(x).end()
using namespace std;
typedef long long ll;
typedef pair<int,int>pi;
typedef pair<ll,ll>pl;
const int inf=1e9+7;
const ll INF=1e18;
vector<int>Mark(int N,int M,int A,int B,vector<int>U,vector<int>V)
{
    int n=N;
    int m=M;
    int a=min(A,3);
    vector<vector<int> >adj(n);
    for(int i=0;i<m;i++)
        adj[U[i]].eb(V[i]),adj[V[i]].eb(U[i]);
    vector<int>dis(n,inf);
    queue<int>q;
    dis[0]=0;
    q.ep(0);
    while(!q.empty())
    {
        int x=q.front();
        q.pop();
        for(int&t:adj[x])
            if(dis[t]==inf)
                dis[t]=dis[x]+1,q.ep(t);
    }
    vector<int>col(m,0);
    if(a==2)
    {
        const int pat[6]={0,0,1,0,1,1};
        vector<int>pai(n,-1);
        for(int i=0;i<m;i++)
            pai[dis[U[i]]>dis[V[i]]?U[i]:V[i]]=i;
        fill(all(dis),inf);
        dis[0]=0;
        q.ep(0);
        while(!q.empty())
        {
            int x=q.front();
            q.pop();
            if(x!=0)
                col[pai[x]]=pat[dis[x]];
            for(int&t:adj[x])
            {
                if(dis[t]==inf)
                {
                    if(x==0)
                        dis[t]=0;
                    else if((int)adj[x].size()>2)
                        dis[t]=5-dis[x];
                    else
                        dis[t]=(dis[x]+1)%6;
                    q.ep(t);
                }
            }
        }
    }
    else
        for(int i=0;i<m;i++)
            col[i]=(dis[U[i]]+dis[V[i]])/2%a;
    return col;
}
#include"Catherine.h"
#include<iostream>
#include<vector>
#include<algorithm>
#define ep emplace
#define eb emplace_back
#define fi first
#define se second
#define all(x) (x).begin(),(x).end()
using namespace std;
typedef long long ll;
typedef pair<int,int>pi;
typedef pair<ll,ll>pl;
const int inf=1e9+7;
const ll INF=1e18;
static int a,prv,cnt,cur;
static int type;
static bool cor;
void Init(int A,int B)
{
    type=prv=-1;
    cor=0;
    cur=cnt=0;
    a=min(A,3);
    return;
}
int Move(vector<int>y)
{
    if(a==2)
    {
        if((prv!=-1?1:0)+y[0]+y[1]>=3)
        {
            cor=1;
            if(y[0]==0||y[1]==0)
                return-1;
            if(prv==-1)
                return prv=y[0]==1?0:1;
            return prv^=1;
        }
        if((prv!=-1?1:0)+y[0]+y[1]==1)
        {
            cor=1;
            if(y[0]==1)
                return prv=0;
            if(y[1]==1)
                return prv=1;
            return-1;
        }
        if(cor)
            return prv=y[0]==1?0:1;
        cnt++;
        if(prv==-1)
        {
            if(y[0]==0)
            {
                type=0;
                return prv=cur=0;
            }
            if(y[1]==0)
            {
                type=2;
                return prv=cur=1;
            }
            type=1;
            return prv=cur=1;
        }
        int nx=y[0]==1?0:1;
        cur=cur*2+nx;
        if(cnt==4)
        {
            cor=1;
            if(cur==5||cur==11||cur==12||(cur==9&&type==2))
                return-1;
            return prv=nx;
        }
        return prv=nx;
    }
    int c=0;
    for(int i=0;i<3;i++)
        if(y[i]>0)
            c+=3+i;
    if(c<6)
        return c-3;
    for(int i=0;i<3;i++)
        if(y[i]==0)
            return(i+1)%3;
    return a;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 52 ms 15572 KB Output is correct
2 Correct 1 ms 648 KB Output is correct
3 Correct 43 ms 14908 KB Output is correct
4 Correct 65 ms 16744 KB Output is correct
5 Correct 73 ms 16708 KB Output is correct
6 Correct 53 ms 15276 KB Output is correct
7 Correct 69 ms 15572 KB Output is correct
8 Correct 58 ms 16360 KB Output is correct
9 Correct 61 ms 16080 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 52 ms 15572 KB Output is correct
2 Correct 1 ms 648 KB Output is correct
3 Correct 43 ms 14908 KB Output is correct
4 Correct 65 ms 16744 KB Output is correct
5 Correct 73 ms 16708 KB Output is correct
6 Correct 53 ms 15276 KB Output is correct
7 Correct 69 ms 15572 KB Output is correct
8 Correct 58 ms 16360 KB Output is correct
9 Correct 61 ms 16080 KB Output is correct
10 Correct 47 ms 13408 KB Output is correct
11 Correct 50 ms 13416 KB Output is correct
12 Correct 47 ms 13416 KB Output is correct
13 Correct 48 ms 13292 KB Output is correct
14 Correct 49 ms 13708 KB Output is correct
15 Correct 53 ms 14092 KB Output is correct
16 Correct 57 ms 16196 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 47 ms 13292 KB Output is correct
2 Correct 1 ms 776 KB Output is correct
3 Correct 40 ms 12768 KB Output is correct
4 Correct 65 ms 14532 KB Output is correct
5 Correct 66 ms 14556 KB Output is correct
6 Correct 48 ms 13376 KB Output is correct
7 Correct 50 ms 13196 KB Output is correct
8 Correct 61 ms 13924 KB Output is correct
9 Correct 63 ms 13912 KB Output is correct
10 Correct 56 ms 13644 KB Output is correct
11 Correct 53 ms 13636 KB Output is correct
12 Correct 54 ms 13644 KB Output is correct
13 Correct 52 ms 13660 KB Output is correct
14 Correct 59 ms 13900 KB Output is correct
15 Correct 55 ms 13916 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 47 ms 13292 KB Output is correct
2 Correct 1 ms 776 KB Output is correct
3 Correct 40 ms 12768 KB Output is correct
4 Correct 65 ms 14532 KB Output is correct
5 Correct 66 ms 14556 KB Output is correct
6 Correct 48 ms 13376 KB Output is correct
7 Correct 50 ms 13196 KB Output is correct
8 Correct 61 ms 13924 KB Output is correct
9 Correct 63 ms 13912 KB Output is correct
10 Correct 56 ms 13644 KB Output is correct
11 Correct 53 ms 13636 KB Output is correct
12 Correct 54 ms 13644 KB Output is correct
13 Correct 52 ms 13660 KB Output is correct
14 Correct 59 ms 13900 KB Output is correct
15 Correct 55 ms 13916 KB Output is correct
16 Correct 41 ms 11716 KB Output is correct
17 Correct 41 ms 11808 KB Output is correct
18 Correct 43 ms 11716 KB Output is correct
19 Correct 43 ms 11496 KB Output is correct
20 Correct 52 ms 12180 KB Output is correct
21 Correct 47 ms 11844 KB Output is correct
22 Correct 53 ms 14216 KB Output is correct
23 Correct 44 ms 11760 KB Output is correct
24 Correct 44 ms 11460 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 2 ms 1148 KB Output is correct
2 Correct 1 ms 836 KB Output is correct
3 Correct 2 ms 1120 KB Output is correct
4 Correct 2 ms 1036 KB Output is correct
5 Correct 2 ms 1128 KB Output is correct
6 Correct 2 ms 1252 KB Output is correct
7 Incorrect 2 ms 1124 KB Wrong Answer [5]
8 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 44 ms 11364 KB Output is correct
2 Incorrect 45 ms 11156 KB Wrong Answer [5]
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 48 ms 11492 KB Wrong Answer [5]
2 Halted 0 ms 0 KB -