paint.cpp: In function 'void update(int, int)':
paint.cpp:44:10: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (r+1 < s.size()) xarr[r+1]--;
~~~~^~~~~~~~~~
paint.cpp: In function 'int f(int, int)':
paint.cpp:49:8: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (i >= s.size()) return (k == c.size());
~~^~~~~~~~~~~
paint.cpp:49:31: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (i >= s.size()) return (k == c.size());
~~^~~~~~~~~~~
paint.cpp:52:8: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (k != c.size() && i+c[k] > s.size()) return dp[i][k] = 0;
~~^~~~~~~~~~~
paint.cpp:52:30: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (k != c.size() && i+c[k] > s.size()) return dp[i][k] = 0;
~~~~~~~^~~~~~~~~~
paint.cpp:53:8: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (k < c.size() && (varmi(i, c[k]+i-1) == 0) && (c[k]+i == s.size() || s[i+c[k]] != 'X')){
~~^~~~~~~~~~
paint.cpp:53:59: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if (k < c.size() && (varmi(i, c[k]+i-1) == 0) && (c[k]+i == s.size() || s[i+c[k]] != 'X')){
paint.cpp: In function 'std::__cxx11::string solve_puzzle(std::__cxx11::string, std::vector<int>)':
paint.cpp:70:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0; i < s.size(); i++){
~~^~~~~~~~~~
paint.cpp:75:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0; i < s.size(); i++) ans += (s[i] == '_' ? '_' : '!');
~~^~~~~~~~~~
paint.cpp:79:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0; i < s.size(); i++) xarr[i] = 0;
~~^~~~~~~~~~
paint.cpp:81:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0; i <= s.size()+1; i++) for (int j = 0; j <= c.size(); j++) dp[i][j] = -1;
~~^~~~~~~~~~~~~
paint.cpp:81:58: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 0; i <= s.size()+1; i++) for (int j = 0; j <= c.size(); j++) dp[i][j] = -1;
~~^~~~~~~~~~~
paint.cpp:86:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
for (int i = 1; i < s.size(); i++){
~~^~~~~~~~~~