QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#163654#7123. Robot ContestLynkcat3 205ms5048kbC++203.6kb2023-09-04 13:37:212024-04-21 00:19:57

Judging History

你现在查看的是测评时间为 2024-04-21 00:19:57 的历史记录

  • [2024-04-28 07:03:12]
  • 管理员手动重测本题所有提交记录
  • 测评结果:3
  • 用时:204ms
  • 内存:5000kb
  • [2024-04-21 00:19:57]
  • 管理员手动重测本题所有提交记录
  • 测评结果:3
  • 用时:205ms
  • 内存:5048kb
  • [2023-09-04 13:37:21]
  • 评测
  • 测评结果:3
  • 用时:220ms
  • 内存:4976kb
  • [2023-09-04 13:37:21]
  • 提交

answer

#include<bits/stdc++.h>
#include "robot.h"
#define poly vector<int>
#define IOS ios::sync_with_stdio(false)
#define ll long long
#define mp make_pair
#define mt make_tuple
#define pa pair < int,int >
#define fi first
#define se second
#define inf 1e18
#define mod 998244353
// #define int ll
// #define N 
using namespace std;
namespace 
{
    int s[4];
    string val="WSENHT";
}
inline int rev(int x)
{
    return ((x-2)^4)+2;
}
inline int rl(int x)
{
    return (x-2)&3;
}
inline int sta(int x)
{
    if (x<2) return 2;
    return (x-2)>3;
}
void work(int k)
{
    if (k==4)
    {
        if (s[1]==-2&&s[2]==-2)
        {
            int o=0,p=1;
            for (int i=0;i<4;i++)
                if (s[i]==0) p=0;
            if (p)
            {
                for (int i=0;i<4;i++)
                    if (s[i]>0) o=i;
                    set_instruction((poly){0,s[0],s[1],s[2],s[3]},1,val[o]);
                for (int j=2;j<=9;j++)
                    set_instruction((poly){j,s[0],s[1],s[2],s[3]},1,val[rl(j)]);
                return;
            }
        }
        if (s[0]==-2&&s[3]==-2)
        {
            for (int j=2;j<=9;j++)
            {
                int o=4;
                for (int i=0;i<4;i++)
                    if (s[i]==1) o=i;
                {
                    // if (nxt!=4)
                    // {
                    //     set_instruction((poly){j,s[0],s[1],s[2],s[3]},j,val[nxt]);
                    // } else
                    if (o!=4)
                    {
                        set_instruction((poly){j,s[0],s[1],s[2],s[3]},1,val[5]);
                    }
                    else
                    {
                        int nxt=4;
                        for (int i=0;i<4;i++)
                            if (s[i]==0&&sta(s[i])==1||sta(s[i])==(sta(j)^1)) nxt=i;
                        if (nxt!=4)
                        {
                            set_instruction((poly){j,s[0],s[1],s[2],s[3]},j,val[nxt]);
                        } else
                        {
                            for (int i=0;i<4;i++)
                                if (sta(s[i])==sta(j)) nxt=i;
                            if (nxt!=4)
                                set_instruction((poly){j,s[0],s[1],s[2],s[3]},rev(j),val[nxt]);
                        }
                    }
                }
            }
            int o=4;
            for (int i=0;i<4;i++)
                if (s[i]==0) o=i;
            set_instruction((poly){0,s[0],s[1],s[2],s[3]},2,val[o]);
            return;
        }
        {
            int o=4,op=4;
            for (int i=0;i<4;i++)
                if (s[i]==1) o=i;
            if (o!=4)
            {
                for (int j=2;j<=9;j++)
                    set_instruction((poly){j,s[0],s[1],s[2],s[3]},1,val[rl(j)]);
                return;
            }
        }
        for (int j=2;j<=9;j++)
        {
            int o=sta(s[rl(j)]);
            int nxt=4;
            for (int i=0;i<4;i++)
                if (s[i]==0&&o==1||sta(s[i])==(o^1)&&rl(s[i])==(i^2)) nxt=i;
            if (nxt==4) nxt=rl(j);
            set_instruction((poly){j,s[0],s[1],s[2],s[3]},
            (rl(j)^(o*4))+2,val[nxt]);
        }
        int fa=0;
        int lst=-1;
        for (int i=0;i<4;i++)
            if (s[i]>5)
            {
                fa=i;
            }
        set_instruction((poly){0,s[0],s[1],s[2],s[3]},fa+4+2,val[fa]);
        return;
    }
    for (int i=-2;i<=9;i++)
    {
        s[k]=i;
        work(k+1);
    }
}
void program_pulibot()
{
    int mx=9;
    work(0);
}

详细

Subtask #1:

score: 3
Acceptable Answer

Test #1:

score: 3
Acceptable Answer
time: 189ms
memory: 4848kb

input:

4 8
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
t

output:

p71c1rw3EvfjFcMVWG0EOedGbWDX5uUp
OK
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
...

result:

points 0.50

Test #2:

score: 3
Acceptable Answer
time: 205ms
memory: 4688kb

input:

12 7
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
0 0 0 0 0 0 0
t

output:

p71c1rw3EvfjFcMVWG0EOedGbWDX5uUp
OK
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
...

result:

points 0.50

Test #3:

score: 3
Acceptable Answer
time: 193ms
memory: 5048kb

input:

15 15
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 ...

output:

p71c1rw3EvfjFcMVWG0EOedGbWDX5uUp
OK
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
...

result:

points 0.50

Test #4:

score: 3
Acceptable Answer
time: 192ms
memory: 4748kb

input:

2 2
0 0
0 0
t

output:

p71c1rw3EvfjFcMVWG0EOedGbWDX5uUp
OK
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
...

result:

points 0.50

Test #5:

score: 3
Acceptable Answer
time: 181ms
memory: 4808kb

input:

2 3
0 0 0
0 0 0
t

output:

p71c1rw3EvfjFcMVWG0EOedGbWDX5uUp
OK
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
...

result:

points 0.50

Test #6:

score: 3
Acceptable Answer
time: 196ms
memory: 4692kb

input:

2 4
0 0 0 0
0 0 0 0
t

output:

p71c1rw3EvfjFcMVWG0EOedGbWDX5uUp
OK
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
...

result:

points 0.50

Test #7:

score: 3
Acceptable Answer
time: 201ms
memory: 4756kb

input:

2 10
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
t

output:

p71c1rw3EvfjFcMVWG0EOedGbWDX5uUp
OK
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
...

result:

points 0.50

Test #8:

score: 3
Acceptable Answer
time: 202ms
memory: 4800kb

input:

2 15
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
t

output:

p71c1rw3EvfjFcMVWG0EOedGbWDX5uUp
OK
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
...

result:

points 0.50

Subtask #2:

score: 0
Wrong Answer

Test #9:

score: 0
Wrong Answer
time: 192ms
memory: 4980kb

input:

2 15
0 1 0 0 0 1 0 0 0 1 0 1 0 0 0
0 0 0 1 0 0 0 1 0 0 0 0 0 1 0
t

output:

p71c1rw3EvfjFcMVWG0EOedGbWDX5uUp
OK
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
...

result:

wrong answer Invalid move: S = [0, -2, -2, 0, 2], A = 'W'

Subtask #3:

score: 0
Wrong Answer

Test #28:

score: 0
Wrong Answer
time: 194ms
memory: 4752kb

input:

15 15
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 1 0 1 1 1 1 1 1 1 0 1 1 0
1 0 1 1 0 0 0 0 0 0 0 1 0 1 0
0 0 0 0 1 1 0 1 1 0 1 1 0 1 0
1 0 1 0 1 0 0 1 0 0 0 0 0 0 0
0 0 1 0 0 0 1 0 1 1 0 1 0 1 0
1 0 1 0 1 0 1 0 0 0 1 0 1 0 1
0 0 0 1 0 1 0 0 1 0 0 0 0 0 0
0 1 1 1 0 0 0 1 0 0 1 1 1 1 0
0 1 0 0 0 1 1 0 1 0 1 0 ...

output:

p71c1rw3EvfjFcMVWG0EOedGbWDX5uUp
OK
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
...

result:

wrong answer Too many steps

Subtask #4:

score: 0
Wrong Answer

Test #40:

score: 0
Wrong Answer
time: 197ms
memory: 4980kb

input:

15 15
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 0 1 1 0 0 0 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 1 0 1 1 0 0 0 0 0 0 0 0
0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 1 0 1 1 0 0 0 0 0 0
0 0 0 0 0 1 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1 0 1 1 0 0 0 0
0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 1 0 1 ...

output:

p71c1rw3EvfjFcMVWG0EOedGbWDX5uUp
OK
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
...

result:

wrong answer Invalid move: S = [0, -2, 0, -1, 2], A = 'W'

Subtask #5:

score: 0
Wrong Answer

Test #64:

score: 0
Wrong Answer
time: 201ms
memory: 4692kb

input:

15 15
0 0 0 0 1 0 0 1 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 0 1 1 0 1 1 0
0 0 1 1 1 1 1 1 1 0 0 1 0 0 0
0 0 0 0 0 0 0 0 0 0 0 1 0 0 1
0 1 1 1 1 1 1 1 1 0 0 1 0 0 0
0 1 0 0 0 0 0 0 1 1 0 0 1 0 0
0 0 1 0 0 1 0 0 0 0 0 0 0 1 0
0 0 1 0 0 1 1 0 0 1 0 0 0 1 0
0 1 0 0 1 0 0 1 1 0 1 1 1 0 0
0 1 0 0 0 0 0 0 1 0 0 0 ...

output:

p71c1rw3EvfjFcMVWG0EOedGbWDX5uUp
OK
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
...

result:

wrong answer Invalid move: S = [0, -2, 0, -1, 2], A = 'W'