/in/foo.cc: In function 'void Euler()':
/in/foo.cc:2:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
#define rep(i,l,r) for(int i=(l);i<=(r);i++)
^
/in/foo.cc:8:2: note: in expansion of macro 'rep'
rep(i,2,n){
^~~
/in/foo.cc:2:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
#define rep(i,l,r) for(int i=(l);i<=(r);i++)
^
/in/foo.cc:14:3: note: in expansion of macro 'rep'
rep(j,1,len){
^~~
/in/foo.cc: In function 'void split(int)':
/in/foo.cc:2:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
#define rep(i,l,r) for(int i=(l);i<=(r);i++)
^
/in/foo.cc:21:2: note: in expansion of macro 'rep'
rep(i,firpos[a],len){
^~~
/in/foo.cc:22:23: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
if(prime[i]*prime[i]>a) break;//当大于等于根号n的时候就退出,复杂度才是根号n的。
~~~~~~~~~~~~~~~~~^~
/in/foo.cc: In function 'int main()':
/in/foo.cc:2:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
#define rep(i,l,r) for(int i=(l);i<=(r);i++)
^
/in/foo.cc:35:2: note: in expansion of macro 'rep'
rep(i,2,n) split(i);
^~~
/in/foo.cc:2:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
#define rep(i,l,r) for(int i=(l);i<=(r);i++)
^
/in/foo.cc:37:2: note: in expansion of macro 'rep'
rep(i,1,n) ans=(ans*(cnt[i]*2+1))%mod;
^~~