Submission #3416121


Source Code Expand

#include <bits/stdc++.h>
using namespace std;
#define rep(i, x, n) for(long i = x; i < n; i++)
#define erep(i, x, n) for(long i = x; i <= n; i++)
#define all(a) a.begin(), a.end()
#define eall(a) a.begin()+1, a.end()
#define show(ans)  cout << ans << endl;
const long MOD = 1000000007;

long N, M;
long cnt = 0;
vector<bool> vis(9, false);
vector<vector<long>> s(9);
bool check(){
  erep(i, 1, N){
    if(vis[i] == false){
      return false;
    }
  }
  return true;
}

void dfs(long x){
  vis[x] = true;
  if(check() == true){
    cnt++;
    vis[x] = false;
    return;
  }
  rep(i, 0, s[x].size()){
    if(vis[s[x][i]] == false) dfs(s[x][i]);
  }
  vis[x] = false;
  return;
}

int main(){
cin >> N >> M;
erep(i, 1, M){
  long a1, b1;
  cin >> a1 >> b1;
  s[a1].push_back(b1);
  s[b1].push_back(a1);
}
dfs(1);
show(cnt);

return 0;
}

Submission Info

Submission Time
Task C - One-stroke Path
User mu55
Language C++14 (GCC 5.4.1)
Score 300
Code Size 884 Byte
Status AC
Exec Time 1 ms
Memory 256 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 1 ms 256 KB
sample_02.txt AC 1 ms 256 KB
subtask_1_01.txt AC 1 ms 256 KB
subtask_1_02.txt AC 1 ms 256 KB
subtask_1_03.txt AC 1 ms 256 KB
subtask_1_04.txt AC 1 ms 256 KB
subtask_1_05.txt AC 1 ms 256 KB
subtask_1_06.txt AC 1 ms 256 KB
subtask_1_07.txt AC 1 ms 256 KB
subtask_1_08.txt AC 1 ms 256 KB
subtask_1_09.txt AC 1 ms 256 KB
subtask_1_10.txt AC 1 ms 256 KB
subtask_1_11.txt AC 1 ms 256 KB
subtask_1_12.txt AC 1 ms 256 KB
subtask_1_13.txt AC 1 ms 256 KB