#include using namespace std; ostream& operator<<(ostream& os, const pair& p) { return os << "(" << p.first << "," << p.second << ")"; } void printVPair(vector>& v) { for (auto i: v) { cout << i << " "; } cout << endl; } template void printC(Container& c) { for (auto i: c) { cout << i << " "; } cout << endl; }; class Solution { public: vector solution(vector& A) { vector result; for (auto i: A) result.push_back(i + 3); return result; } }; int main(void) { vector,vector>> testCases = { { {1,2,3}, {4,5,6} }, // passes { {10,11}, {13,15} }, // fails }; for (auto tc: testCases) { Solution s; vector& input = get<0>(tc); vector& expected = get<1>(tc); vector result = s.solution(input); int width = 10; cout << setw(width) << "input: "; printC(input); cout << setw(width) << "result: "; printC(result); cout << setw(width) << "expected: "; printC(expected); cout << (result == expected ? "\033[32mpassed\033[0m" : "\033[31mfailed\033[0m") << endl; cout << "----------------------------\n"; } }