prog.cpp:3:19: error: ‘vector’ has not been declared
int numOfWays(vector<int>& nums) {
^~~~~~
prog.cpp:3:25: error: expected ‘,’ or ‘...’ before ‘<’ token
int numOfWays(vector<int>& nums) {
^
prog.cpp:21:5: error: ‘vector’ does not name a type
vector<vector<long long>> table;
^~~~~~
prog.cpp:22:19: error: ‘vector’ has not been declared
long long dfs(vector<int> &nums, long long mod){
^~~~~~
prog.cpp:22:25: error: expected ‘,’ or ‘...’ before ‘<’ token
long long dfs(vector<int> &nums, long long mod){
^
prog.cpp: In member function ‘int Solution::numOfWays(int)’:
prog.cpp:5:11: error: ‘nums’ was not declared in this scope
int n = nums.size();
^~~~
prog.cpp:5:11: note: suggested alternative: ‘enum’
int n = nums.size();
^~~~
enum
prog.cpp:8:9: error: ‘table’ was not declared in this scope
table.resize(n + 1);
^~~~~
prog.cpp:8:9: note: suggested alternative: ‘mutable’
table.resize(n + 1);
^~~~~
mutable
prog.cpp:10:24: error: ‘vector’ was not declared in this scope
table[i] = vector<long long>(i + 1, 1);
^~~~~~
prog.cpp:10:31: error: expected primary-expression before ‘long’
table[i] = vector<long long>(i + 1, 1);
^~~~
prog.cpp: In member function ‘long long int Solution::dfs(int)’:
prog.cpp:23:17: error: ‘nums’ was not declared in this scope
int n = nums.size();
^~~~
prog.cpp:23:17: note: suggested alternative: ‘enum’
int n = nums.size();
^~~~
enum
prog.cpp:27:9: error: ‘vector’ was not declared in this scope
vector<int> left, right;
^~~~~~
prog.cpp:27:16: error: expected primary-expression before ‘int’
vector<int> left, right;
^~~
prog.cpp:29:35: error: ‘left’ was not declared in this scope
if(nums[i] < nums[0]) left.push_back(nums[i]);
^~~~
prog.cpp:30:18: error: ‘right’ was not declared in this scope
else right.push_back(nums[i]);
^~~~~
prog.cpp:34:34: error: ‘left’ was not declared in this scope
long long left_res = dfs(left, mod) % mod;
^~~~
prog.cpp:34:40: error: ‘mod’ was not declared in this scope
long long left_res = dfs(left, mod) % mod;
^~~
prog.cpp:35:35: error: ‘right’ was not declared in this scope
long long right_res = dfs(right, mod) % mod;
^~~~~
prog.cpp:39:19: error: ‘table’ was not declared in this scope
return (((table[n - 1][left_len] * left_res) % mod) * right_res) % mod;
^~~~~
prog.cpp:39:19: note: suggested alternative: ‘mutable’
return (((table[n - 1][left_len] * left_res) % mod) * right_res) % mod;
^~~~~
mutable