Submission #64382697


Source Code Expand

Copy
#include <stdio.h>
#include <inttypes.h>
#define INF UINT64_C(0x4000000000000000)
struct edge_s {
int to;
uint64_t w;
};
int ec[16];
struct edge_s es[16][16];
int N;
uint64_t memo[16][1 << 16];
uint64_t calc(int node, int visited) {
uint64_t ans = INF;
int i;
if ((visited >> node) & 1) return INF;
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#include <stdio.h>
#include <inttypes.h>

#define INF UINT64_C(0x4000000000000000)

struct edge_s {
	int to;
	uint64_t w;
};

int ec[16];
struct edge_s es[16][16];

int N;

uint64_t memo[16][1 << 16];

uint64_t calc(int node, int visited) {
	uint64_t ans = INF;
	int i;
	if ((visited >> node) & 1) return INF;
	if (node == N) return 0;
	if (memo[node][visited]) return ~memo[node][visited];
	for (i = 0; i < ec[node]; i++) {
		uint64_t candidate = calc(es[node][i].to, visited | (1 << node)) ^ es[node][i].w;
		if (candidate < ans) ans = candidate;
	}
	return ~(memo[node][visited] = ~ans);
}

int main(void) {
	int M;
	int i;
	if (scanf("%d%d", &N, &M) != 2) return 1;
	for (i = 0; i < M; i++) {
		int u, v;
		uint64_t w;
		if (scanf("%d%d%" SCNu64, &u, &v, &w) != 3) return 1;
		es[u][ec[u]++] = (struct edge_s){ v, w };
		es[v][ec[v]++] = (struct edge_s){ u, w };
	}
	printf("%" PRIu64 "\n", calc(1, 0));
	return 0;
}

Submission Info

Submission Time
Task D - Minimum XOR Path
User mikecat
Language C (gcc 12.2.0)
Score 0
Code Size 965 Byte
Status WA
Exec Time 1 ms
Memory 1808 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 400
Status
AC × 3
AC × 15
WA × 17
Set Name Test Cases
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_test_00.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt, 01_test_20.txt, 01_test_21.txt, 01_test_22.txt, 01_test_23.txt, 01_test_24.txt, 01_test_25.txt, 01_test_26.txt, 01_test_27.txt, 01_test_28.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 0 ms 1596 KB
00_sample_01.txt AC 1 ms 1764 KB
00_sample_02.txt AC 0 ms 1644 KB
01_test_00.txt AC 0 ms 1628 KB
01_test_01.txt WA 0 ms 1760 KB
01_test_02.txt AC 0 ms 1612 KB
01_test_03.txt AC 0 ms 1736 KB
01_test_04.txt AC 0 ms 1656 KB
01_test_05.txt AC 0 ms 1756 KB
01_test_06.txt WA 0 ms 1764 KB
01_test_07.txt WA 1 ms 1684 KB
01_test_08.txt WA 0 ms 1760 KB
01_test_09.txt WA 0 ms 1788 KB
01_test_10.txt AC 0 ms 1768 KB
01_test_11.txt WA 0 ms 1792 KB
01_test_12.txt WA 0 ms 1608 KB
01_test_13.txt WA 0 ms 1696 KB
01_test_14.txt WA 0 ms 1776 KB
01_test_15.txt WA 0 ms 1700 KB
01_test_16.txt AC 0 ms 1748 KB
01_test_17.txt WA 0 ms 1800 KB
01_test_18.txt WA 0 ms 1620 KB
01_test_19.txt WA 0 ms 1808 KB
01_test_20.txt WA 0 ms 1732 KB
01_test_21.txt WA 0 ms 1660 KB
01_test_22.txt WA 1 ms 1696 KB
01_test_23.txt WA 0 ms 1728 KB
01_test_24.txt AC 0 ms 1720 KB
01_test_25.txt AC 0 ms 1612 KB
01_test_26.txt AC 0 ms 1616 KB
01_test_27.txt AC 0 ms 1732 KB
01_test_28.txt AC 0 ms 1628 KB


2025-03-31 (Mon)
08:30:59 +09:00