QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#210979#5364. 面国漫步Fido_Puppy0 0ms3712kbC++231.2kb2023-10-11 22:32:052023-10-11 22:32:05

Judging History

你现在查看的是最新测评结果

  • [2023-10-11 22:32:05]
  • 评测
  • 测评结果:0
  • 用时:0ms
  • 内存:3712kb
  • [2023-10-11 22:32:05]
  • 提交

answer

#include <bits/stdc++.h>

using namespace std;

constexpr int N = 107, K = 1e4 + 7;

#define ull unsigned long long
#define inf (1ull << 60)
#define NO cout << "YouAreFake!\n", exit(0)

vector <tuple <int, int, ull>> ans;
#define push(x, y, z) ans.emplace_back(x, y, z)
void print() {
	cout << "YouAreWrite!\n";
	for (auto [x, y, z] : ans) {
		cout << x << ' ' << y << ' ' << z << '\n';
	}
}

int n, k, q[K];
ull dis[N], e[N];

int cnt[N];
bool vis[K];

int main() {
	ios :: sync_with_stdio(0), cin.tie(0);
	cin >> n >> k;
	for (int i = 1; i <= n; ++i) dis[i] = inf;
	for (int i = 1; i <= k; ++i) cin >> q[i];
	for (int i = k; i; --i) {
		if (!cnt[ q[i] ]) vis[i] = 1;
		++cnt[ q[i] ];
	}
	if (!vis[1] || q[1] != 1) NO;
	for (int i = 1; i <= n; ++i) e[i] = 0;
	dis[1] = 0;
	for (int l = 1, r; l < k; l = r) {
		r = l + 1;
		while (!vis[r]) ++r;
		for (int i = l + 1; i < r; ++i) cnt[ q[i] ] = 0;
		for (int i = l + 1; i < r; ++i) {
			++cnt[ q[i] ];
			if (cnt[ q[i] ] > 1) NO;
			--dis[ q[i] ];
			push(q[l], q[i], dis[ q[i] ] - dis[ q[l] ]);
			e[ q[i] ] = max(e[ q[i] ], inf - dis[ q[i] ]);
		}
		dis[ q[r] ] = dis[ q[l] ] + e[ q[l] ];
		push(q[l], q[r], e[ q[l] ]);
	}
	print();
	return 0;
}

详细

Subtask #1:

score: 0
Wrong Answer

Test #1:

score: 0
Wrong Answer
time: 0ms
memory: 3688kb

input:

3 1
1

output:

YouAreWrite!

result:

wrong output format Unexpected end of file - int32 expected

Subtask #2:

score: 0
Wrong Answer

Test #16:

score: 0
Wrong Answer
time: 0ms
memory: 3712kb

input:

85 78
1 46 49 66 12 47 36 28 44 17 48 34 5 82 20 40 69 52 75 27 14 43 53 83 33 55 38 77 58 56 76 81 6 84 19 80 67 3 50 25 26 21 29 62 70 22 68 63 74 37 7 73 78 42 32 2 64 8 39 71 59 18 23 24 9 51 85 11 57 41 45 16 54 30 35 61 72 4

output:

YouAreWrite!
1 46 0
46 49 0
49 66 0
66 12 0
12 47 0
47 36 0
36 28 0
28 44 0
44 17 0
17 48 0
48 34 0
34 5 0
5 82 0
82 20 0
20 40 0
40 69 0
69 52 0
52 75 0
75 27 0
27 14 0
14 43 0
43 53 0
53 83 0
83 33 0
33 55 0
55 38 0
38 77 0
77 58 0
58 56 0
56 76 0
76 81 0
81 6 0
6 84 0
84 19 0
19 80 0
80 67 0
67 3...

result:

wrong answer Integer 0 violates the range [1, 85]

Subtask #3:

score: 0
Skipped

Dependency #1:

0%

Subtask #4:

score: 0
Skipped

Dependency #2:

0%

Subtask #5:

score: 0
Skipped

Dependency #1:

0%