fork download
  1. #include <iostream>
  2. #include <vector>
  3. #include <algorithm>
  4. using namespace std;
  5. const int MX = 3e5+10;
  6.  
  7. int main() {
  8. int n; cin >> n;
  9. int a[2][MX], sz[2];
  10. sz[0] = 0; sz[1] = 1;
  11. a[1][0] = 0;
  12. for (int i = 0; i < n; i++) {
  13. int x; cin >> x;
  14. int idx = i%2, prev = 1-idx;
  15. sz[idx] = 0;
  16. for (int k = 0; k < x; k++) {
  17. int p; cin >> p;
  18. for (int j = 0; j < sz[prev]; j++) {
  19. int add = a[prev][j];
  20. a[idx][sz[idx]++] = p+add;
  21. }
  22. }
  23. }
  24. int idx = 1-n%2;
  25. vector<int> ans;
  26. for (int i = 0; i < sz[idx]; i++) {
  27. ans.push_back(a[idx][i]);
  28. }
  29. sort(ans.begin(), ans.end());
  30. for (int i = 0; i < ans.size(); i++) {
  31. if (i == 0 || ans[i] != ans[i-1]) {
  32. cout << ans[i] << " ";
  33. }
  34. }
  35. return 0;
  36. }
Success #stdin #stdout 0s 5696KB
stdin
Standard input is empty
stdout
0