gift.cpp: In function 'int construct(int, int, vi, vi, vi)':
gift.cpp:52:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
52 | for (int i = 1; i < ones.size(); i++) {
| ~~^~~~~~~~~~~~~
gift.cpp:74:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
74 | for (int i = 1; i < twos.size(); i++) {
| ~~^~~~~~~~~~~~~
gift.cpp:88:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
88 | while (one < onesA.size() && two < twosA.size()){
| ~~~~^~~~~~~~~~~~~~
gift.cpp:88:38: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
88 | while (one < onesA.size() && two < twosA.size()){
| ~~~~^~~~~~~~~~~~~~
gift.cpp:92:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
92 | if (one >= onesA.size()) break;
| ~~~~^~~~~~~~~~~~~~~
gift.cpp:100:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
100 | if (one < onesA.size() && two < twosA.size()){
| ~~~~^~~~~~~~~~~~~~
gift.cpp:100:39: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
100 | if (one < onesA.size() && two < twosA.size()){
| ~~~~^~~~~~~~~~~~~~
gift.cpp:124:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
124 | if (one < onesA.size() || (one >= onesA.size() && two >= twosA.size())){
| ~~~~^~~~~~~~~~~~~~
gift.cpp:124:40: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
124 | if (one < onesA.size() || (one >= onesA.size() && two >= twosA.size())){
| ~~~~^~~~~~~~~~~~~~~
gift.cpp:124:63: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
124 | if (one < onesA.size() || (one >= onesA.size() && two >= twosA.size())){
| ~~~~^~~~~~~~~~~~~~~
gift.cpp:125:42: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
125 | while (i > onesB[one] && one < onesA.size()) one++;
| ~~~~^~~~~~~~~~~~~~
gift.cpp: In function 'void setIO(std::string)':
gift.cpp:36:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
36 | freopen((name+".in").c_str(), "r", stdin); // see Input & Output
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gift.cpp:37:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
37 | freopen((name+".out").c_str(), "w", stdout);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~