Submission #6375519


Source Code Expand

import sys
input = sys.stdin.readline
sys.setrecursionlimit(10**6)

N,M = map(int,input().split())
if M&1:
    print(-1)
    exit()

AB = [[int(x) for x in input().split()] for _ in range(M)]

graph = [[] for _ in range(N+1)]
for a,b in AB:
    graph[a].append(b)
    graph[b].append(a)

# まずは全域木をつくる
tree = [set() for _ in range(N+1)]
visited = [False] * (N+1)
q = [1]
while q:
    x = q.pop()
    for y in graph[x]:
        if visited[y]:
            continue
        visited[y] = True
        tree[x].add(y)
        tree[y].add(x)
        q.append(y)

answer = []
out_deg = [0] * (N+1)
# 木を残して適当に決める
for a,b in AB:
    if b in tree[a]:
        continue
    answer.append('{} {}'.format(a,b))
    out_deg[a] += 1

def dfs(x = 1,parent = None):
    for y in tree[x]:
        if y == parent:
            continue
        dfs(y,x)
        if out_deg[y] & 1:
            answer.append('{} {}'.format(y,x))
            out_deg[y] += 1
        else:
            answer.append('{} {}'.format(x,y))
            out_deg[x] += 1

dfs()

print('\n'.join(answer))

Submission Info

Submission Time
Task B - Even Degrees
User maspy
Language Python (3.4.3)
Score 700
Code Size 1152 Byte
Status AC
Exec Time 948 ms
Memory 170676 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 700 / 700
Status
AC × 2
AC × 36
Set Name Test Cases
Sample s1.txt, s2.txt
All 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, s1.txt, s2.txt
Case Name Status Exec Time Memory
01.txt AC 714 ms 68960 KiB
02.txt AC 705 ms 68952 KiB
03.txt AC 707 ms 69080 KiB
04.txt AC 711 ms 69028 KiB
05.txt AC 17 ms 3064 KiB
06.txt AC 517 ms 63844 KiB
07.txt AC 527 ms 64020 KiB
08.txt AC 522 ms 64248 KiB
09.txt AC 533 ms 63940 KiB
10.txt AC 17 ms 3064 KiB
11.txt AC 342 ms 38112 KiB
12.txt AC 347 ms 38152 KiB
13.txt AC 337 ms 38224 KiB
14.txt AC 336 ms 38120 KiB
15.txt AC 17 ms 3064 KiB
16.txt AC 308 ms 32844 KiB
17.txt AC 309 ms 32832 KiB
18.txt AC 304 ms 32848 KiB
19.txt AC 313 ms 32836 KiB
20.txt AC 18 ms 3064 KiB
21.txt AC 280 ms 28772 KiB
22.txt AC 282 ms 28840 KiB
23.txt AC 280 ms 28832 KiB
24.txt AC 281 ms 28856 KiB
25.txt AC 17 ms 3064 KiB
26.txt AC 18 ms 3064 KiB
27.txt AC 18 ms 3064 KiB
28.txt AC 948 ms 170676 KiB
29.txt AC 939 ms 169900 KiB
30.txt AC 17 ms 3064 KiB
31.txt AC 18 ms 3064 KiB
32.txt AC 17 ms 3064 KiB
33.txt AC 18 ms 3064 KiB
34.txt AC 17 ms 3064 KiB
s1.txt AC 17 ms 3064 KiB
s2.txt AC 17 ms 3064 KiB