fork(1) download
  1. #include<iostream>
  2. #include<vector>
  3. #include<algorithm>
  4. #include<iterator>
  5. typedef std::vector<double> dvector;
  6. dvector getArray () {
  7. size_t n;
  8. std::cin >> n;
  9. dvector v(n);
  10. for (size_t i = 0; i != v.size(); ++i) {
  11. std::cin >> v[i];
  12. }
  13. return v;
  14. }
  15. dvector operator*(const dvector& a, const dvector& b) {
  16. dvector result(a.size()+b.size());
  17. for (size_t i=0; i < a.size(); ++i){
  18. for (size_t j=0; j < b.size(); ++j){
  19. result[i+j] += a[i]*b[j];
  20. }
  21. }
  22. return result;
  23. }
  24. int main () {
  25. dvector a = getArray();
  26. dvector b = getArray();
  27. dvector result = a*b;
  28. std::ostream_iterator<double> out (std::cout, " ");
  29. std::copy (result.begin(), result.end(), out);
  30. }
Success #stdin #stdout 0s 3476KB
stdin
1 1 2 2
stdout
2 0 0