import java.util.*; public class Main_yukicoder9005_1 implements Runnable { public static void main(String[] args) { new Thread(null, new Main_yukicoder9005_1(), "", 1024 * 1024 * 8).start(); } @Override public void run() { Scanner sc = new Scanner(System.in); // スタックサイズのテスト // 再帰でどこまでいけるのか // 引数の数に int n = sc.nextInt(); if (n == 1) { dfs1(0); } else if (n == 2) { dfs2(0, 0); } else if (n == 3) { dfs3(0, 0, 0); } else if (n == 4) { dfs4(0, 0, 0, 0); } else if (n == 5) { dfs5(0, 0, 0, 0, 0); } System.out.println("0"); sc.close(); } private static void dfs1(int i) { if (i % 1000 == 0) { System.out.printf("dfs1 : %d\n", i); } if (i == 100_000) { return; } int tmp = i + 1; dfs1(tmp); } private static void dfs2(int i, int j) { if (i % 1000 == 0) { System.out.printf("dfs2 : %d\n", i); } if (i == 100_000) { return; } int tmp = i + 1; dfs2(tmp, tmp); } private static void dfs3(int i, int j, int k) { if (i % 1000 == 0) { System.out.printf("dfs3 : %d\n", i); } if (i == 100_000) { return; } int tmp = i + 1; dfs3(tmp, tmp, tmp); } private static void dfs4(int i, int j, int k, int l) { if (i % 1000 == 0) { System.out.printf("dfs4 : %d\n", i); } if (i == 100_000) { return; } int tmp = i + 1; dfs4(tmp, tmp, tmp, tmp); } private static void dfs5(int i, int j, int k, int l, int m) { if (i % 1000 == 0) { System.out.printf("dfs5 : %d\n", i); } if (i == 100_000) { return; } int tmp = i + 1; dfs5(tmp, tmp, tmp, tmp, tmp); } }