frp

---

frp
Aug 22nd, 2011
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.71 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4. vector<int> u, v;
  5. int n;
  6. int count(int r)
  7. {
  8. int res = 0;
  9. for(int i = 0; i < n; i++)
  10. if(r & (1 << i))res++;
  11. return res;
  12. }
  13. int main()
  14. {
  15. int m;
  16. cin >> n >> m;
  17. u.resize(m);
  18. v.resize(m);
  19. for(int i = 0; i < m; i++)
  20. {
  21. int a, b;
  22. cin >> a >> b;
  23. a--;
  24. b--;
  25. u[i] = a;
  26. v[i] = b;
  27. }
  28. vector<int> res(1 << n, -1);
  29. res[0] = 0;
  30. int mres = 0;
  31. for(int i = 1; i < (1 << n); i++)
  32. if(count(i) % 2 == 0)
  33. {
  34. for(int j = 0; j < m; j++)
  35. if(i & (1 << u[j]) && i & (1 << v[j]))
  36. res[i] = max(res[i], res[i ^ (1 << u[j]) ^ (1 << v[j])] + 1);
  37. mres = max(mres, res[i]);
  38. }
  39. cout << mres << '\n';
  40. return 0;
  41. }
Advertisement
Add Comment
Please, Sign In to add comment