public Boolean stop() { if (!isRunning) { return(false); } isRunning = false; SystemTimer.Stop(); Glaph.clear(CPU_Graph_inner); return(true); }
public static void Main() { int N = Cin <int>(); int M = Cin <int>(); List <bool> visit = Enumerable.Repeat(false, N).ToList(); Glaph glaph = new Glaph(visit); glaph.visit[0] = true; glaph.now_Node = 0; List <int>[] edge = new List <int> [N]; for (int i = 0; i < N; i++) { edge[i] = new List <int>(); } for (int i = 0; i < M; i++) { int[] inp = Line <int[]>().Select(v => v - 1).ToArray(); edge[inp[0]].Add(inp[1]); edge[inp[1]].Add(inp[0]); } long ans = 0; Stack <Glaph> stack = new Stack <Glaph>(); stack.Push(glaph); while (stack.Count() != 0) { Glaph now_state = stack.Pop(); if (now_state.visit.All(v => v == true)) { ans++; } foreach (var i in edge[now_state.now_Node]) { if (!now_state.visit[i]) { Glaph next_state = new Glaph(now_state.visit); next_state.visit[i] = true; next_state.now_Node = i; stack.Push(next_state); } } } Console.WriteLine(ans); }
/// <summary> /// データの初期化用 /// </summary> public void Init() { CPU_Graph_inner = new Canvas(); isRunning = false; CPUlog = new List <float>(); startOption = "-Xms2048M -Xmx8192M -jar " + serverFileName + " nogui"; serverProcess = new Process(); serverProcess.StartInfo.FileName = "java"; serverProcess.StartInfo.Arguments = startOption; // "-a -b -c"のように serverProcess.StartInfo.WorkingDirectory = saveDirectryPath; serverProcess.StartInfo.CreateNoWindow = true; serverProcess.StartInfo.RedirectStandardError = true; serverProcess.StartInfo.RedirectStandardOutput = true; serverProcess.StartInfo.UseShellExecute = false; serverProcess.EnableRaisingEvents = true; serverProcess.OutputDataReceived += (sender, ev) => { if (isRunning && ServerManager.ShowingServerName == Name) { DataDictionary.Main_Grid.Dispatcher.Invoke(() => { ((TextBlock)DataDictionary.Main_Grid.FindName("Console_Log_Test")).Text += ev.Data + "\n"; }); } }; serverProcess.ErrorDataReceived += (sender, ev) => { if (isRunning && ServerManager.ShowingServerName == Name) { DataDictionary.Main_Grid.Dispatcher.Invoke(() => { ((TextBlock)DataDictionary.Main_Grid.FindName("Console_Log_Test")).Text += ev.Data + "\n"; }); } }; serverProcess.Exited += (sender, ev) => { Console.WriteLine($"exited"); serverProcess.WaitForExit(); }; // serverLogReader = serverProcess.StandardOutput; CPU_Graph_inner.Name = "System_CPU_Graph_inner"; CPU_Graph_inner.Background = Brushes.White; // タイマー関係 SystemTimer = Timer.CreateTimer(1000); // タイマーイベントの定義 SystemTimer.Tick += async(sender, e) => { object cpuCount = await Task.Run(new Func <object>(SystemInfo.getCPUCounter)); CPUlog.Insert(0, (float)cpuCount); Glaph.CreateCanvasForGlaph(CPU_Graph_inner, CPUlog); }; CreateServer(); }