foo.cc: In function 'void FastBI::fft(std::vector<std::complex<double> >&, bool)':
foo.cc:112:39: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'int' [-Wsign-compare]
112 | for (unsigned i = 1, j = 0; i < n; i++) {
| ~~^~~
foo.cc:114:22: warning: comparison of integer expressions of different signedness: 'unsigned int' and 'int' [-Wsign-compare]
114 | for (; j >= bit; bit >>= 1)
| ~~^~~~~~
foo.cc: In function 'std::vector<int> FastBI::multiply_bigint(const std::vector<int>&, const std::vector<int>&, int)':
foo.cc:142:30: warning: comparison of integer expressions of different signedness: 'size_t' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
142 | for (size_t i = 0; i < n; i++) {
| ~~^~~
foo.cc: In member function 'FastBI::bigint& FastBI::bigint::operator+=(const FastBI::bigint&)':
foo.cc:240:46: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
240 | for (int i = 0, carry = 0; i < other.z.size() || carry; ++i) {
| ~~^~~~~~~~~~~~~~~~
foo.cc:241:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
241 | if (i == z.size())
| ~~^~~~~~~~~~~
foo.cc:243:40: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
243 | z[i] += carry + (i < other.z.size() ? other.z[i] : 0);
| ~~^~~~~~~~~~~~~~~~
foo.cc: In member function 'FastBI::bigint& FastBI::bigint::operator-=(const FastBI::bigint&)':
foo.cc:263:50: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
263 | for (int i = 0, carry = 0; i < other.z.size() || carry; ++i) {
| ~~^~~~~~~~~~~~~~~~
foo.cc:264:44: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
264 | z[i] -= carry + (i < other.z.size() ? other.z[i] : 0);
| ~~^~~~~~~~~~~~~~~~
foo.cc: In member function 'FastBI::bigint& FastBI::bigint::operator*=(int)':
foo.cc:290:42: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
290 | for (int i = 0, carry = 0; i < z.size() || carry; ++i) {
| ~~^~~~~~~~~~
foo.cc:291:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
291 | if (i == z.size())
| ~~^~~~~~~~~~~
foo.cc: In member function 'void FastBI::bigint::read(const std::string&)':
foo.cc:467:24: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
467 | while (pos < s.size() && (s[pos] == '-' || s[pos] == '+')) {
| ~~~~^~~~~~~~~~
foo.cc: In static member function 'static std::vector<int> FastBI::bigint::convert_base(const std::vector<int>&, int, int)':
foo.cc:500:31: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
500 | for (int i = 1; i < p.size(); i++)
| ~~^~~~~~~~~~
foo.cc: In member function 'FastBI::bigint FastBI::bigint::mul_simple(const FastBI::bigint&) const':
foo.cc:536:31: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
536 | for (int i = 0; i < z.size(); ++i)
| ~~^~~~~~~~~~
foo.cc:538:50: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
538 | for (int j = 0, carry = 0; j < v.z.size() || carry; ++j) {
| ~~^~~~~~~~~~~~
foo.cc:539:77: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
539 | long long cur = res.z[i + j] + (long long)z[i] * (j < v.z.size() ? v.z[j] : 0) + carry;
| ~~^~~~~~~~~~~~
foo.cc: In function 'ull highestPowerof2(ull)':
foo.cc:619:12: warning: right shift count >= width of type [-Wshift-count-overflow]
619 | x |= x >> 64;
| ~~^~~~~
[Hydro](https://hydro.ac)提供评测服务