Submission #2560676


Source Code Expand

import java.util.Scanner;

public class Main {

	static boolean[][] g;
	static boolean[] vis;
	static int n, m, ans = 0;

	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		n = sc.nextInt();
		m = sc.nextInt();
		int[] a = new int[m];
		int[] b = new int[m];
		g = new boolean[n][n];
		vis = new boolean[n];
		for(int i = 0 ; i < m ; i++) {
			a[i] = sc.nextInt() - 1;
			b[i] = sc.nextInt() - 1;
			g[a[i]][b[i]] = g[b[i]][a[i]] = true;
		}
		vis[0] = true;
		dfs(0, 0);
		System.out.println(ans);
	}

	static void dfs(int x, int pos) {
		if(pos == n - 1) {
			boolean ok = true;
			for(int i = 0 ; i < n ; i++) {
				if(!vis[i]) ok = false;
			}
			if(ok) ans++;
			return;
		}
		for(int i = 0 ; i < n ; i++) {
			if(!vis[i] && g[x][i]) {
				vis[i] = true;
				dfs(i, pos + 1);
				vis[i] = false;
			}
		}
	}

}

Submission Info

Submission Time
Task C - One-stroke Path
User kouta1612
Language Java8 (OpenJDK 1.8.0)
Score 300
Code Size 893 Byte
Status AC
Exec Time 109 ms
Memory 23636 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 2
AC × 15
Set Name Test Cases
Sample sample_01.txt, sample_02.txt
All sample_01.txt, sample_02.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt
Case Name Status Exec Time Memory
sample_01.txt AC 92 ms 21588 KB
sample_02.txt AC 92 ms 21972 KB
subtask_1_01.txt AC 93 ms 18644 KB
subtask_1_02.txt AC 92 ms 19412 KB
subtask_1_03.txt AC 93 ms 19668 KB
subtask_1_04.txt AC 109 ms 20180 KB
subtask_1_05.txt AC 93 ms 19028 KB
subtask_1_06.txt AC 93 ms 21712 KB
subtask_1_07.txt AC 92 ms 19796 KB
subtask_1_08.txt AC 93 ms 18516 KB
subtask_1_09.txt AC 94 ms 19284 KB
subtask_1_10.txt AC 96 ms 19284 KB
subtask_1_11.txt AC 95 ms 19668 KB
subtask_1_12.txt AC 109 ms 19412 KB
subtask_1_13.txt AC 104 ms 23636 KB