klasika.cpp: In member function 'void trie::add(int, int)':
klasika.cpp:28:27: warning: suggest parentheses around '-' inside '>>' [-Wparentheses]
28 | int bit = (val >> j - 1 & 1);
| ~~^~~
klasika.cpp:30:25: warning: comparison of integer expressions of different signedness: 'std::vector<std::vector<int> >::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
30 | while (nwt.size() <= g) nwt.push_back(vector<int>(2));
| ~~~~~~~~~~~^~~~
klasika.cpp:35:23: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
35 | while (t.size() <= it) t.push_back(N);
| ~~~~~~~~~^~~~~
klasika.cpp: In member function 'int trie::get(int, int)':
klasika.cpp:43:25: warning: comparison of integer expressions of different signedness: 'std::vector<std::vector<int> >::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
43 | while (nwt.size() <= g) nwt.push_back(vector<int>(2));
| ~~~~~~~~~~~^~~~
klasika.cpp:44:23: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
44 | while (t.size() <= it) t.push_back(N);
| ~~~~~~~~~^~~~~
klasika.cpp:45:27: warning: suggest parentheses around '-' inside '>>' [-Wparentheses]
45 | int bit = (val >> j - 1 & 1);
| ~~^~~
klasika.cpp:48:24: warning: suggest parentheses around '-' inside '<<' [-Wparentheses]
48 | ret |= (1 << j - 1);
| ~~^~~
klasika.cpp: In function 'int32_t main()':
klasika.cpp:102:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
102 | freopen("duck.inp", "r", stdin);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
klasika.cpp:103:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
103 | freopen("duck.out", "w", stdout);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~