triples.cpp: In function 'll Check(ll, ll, ll, std::vector<int>&)':
triples.cpp:25:16: warning: narrowing conversion of '(k - i)' from 'll' {aka 'long long int'} to 'int' [-Wnarrowing]
25 | a.insert({k-i, j-i, k-j});
| ~^~
triples.cpp:25:16: warning: narrowing conversion of '(k - i)' from 'll' {aka 'long long int'} to 'int' [-Wnarrowing]
triples.cpp:25:21: warning: narrowing conversion of '(j - i)' from 'll' {aka 'long long int'} to 'int' [-Wnarrowing]
25 | a.insert({k-i, j-i, k-j});
| ~^~
triples.cpp:25:21: warning: narrowing conversion of '(j - i)' from 'll' {aka 'long long int'} to 'int' [-Wnarrowing]
triples.cpp:25:26: warning: narrowing conversion of '(k - j)' from 'll' {aka 'long long int'} to 'int' [-Wnarrowing]
25 | a.insert({k-i, j-i, k-j});
| ~^~
triples.cpp:25:26: warning: narrowing conversion of '(k - j)' from 'll' {aka 'long long int'} to 'int' [-Wnarrowing]
triples.cpp: In function 'll count_triples(std::vector<int>)':
triples.cpp:48:51: error: too few arguments to function 'll Check(ll, ll, ll, std::vector<int>&)'
48 | if (i + H[i] == k - H[i]) cnt += Check(i, i+H[i], k);
| ~~~~~^~~~~~~~~~~~~~
triples.cpp:22:4: note: declared here
22 | ll Check(ll i, ll j, ll k, vector<int>& H) {
| ^~~~~
triples.cpp:49:30: error: too few arguments to function 'll Check(ll, ll, ll, std::vector<int>&)'
49 | else cnt += Check(i, i+H[i], k) + Check(i, k-H[i], k);
| ~~~~~^~~~~~~~~~~~~~
triples.cpp:22:4: note: declared here
22 | ll Check(ll i, ll j, ll k, vector<int>& H) {
| ^~~~~
triples.cpp:49:52: error: too few arguments to function 'll Check(ll, ll, ll, std::vector<int>&)'
49 | else cnt += Check(i, i+H[i], k) + Check(i, k-H[i], k);
| ~~~~~^~~~~~~~~~~~~~
triples.cpp:22:4: note: declared here
22 | ll Check(ll i, ll j, ll k, vector<int>& H) {
| ^~~~~