horses.cpp: In function 'll mypow(ll, ll, ll)':
horses.cpp:46:26: warning: declaration of 'MOD' shadows a global declaration [-Wshadow]
46 | ll mypow(ll a,ll b,ll MOD){
| ^
horses.cpp:34:10: note: shadowed declaration is here
34 | const ll MOD=(1e9+7);
| ^~~
horses.cpp: In function 'int init(int, int*, int*)':
horses.cpp:69:20: warning: conversion from 'double' to 'll' {aka 'long long int'} may change value [-Wfloat-conversion]
69 | MXTO(ans,mult(pow(2.0,pref[i]),y[i]));
| ~~~^~~~~~~~~~~~~
horses.cpp:40:42: note: in definition of macro 'MXTO'
40 | #define MXTO(x,y) x=max(x,(__typeof__(x))y)
| ^
horses.cpp:71:9: warning: conversion from 'll' {aka 'long long int'} to 'int' may change value [-Wconversion]
71 | return ans;
| ^~~
horses.cpp: In function 'int updateX(int, int)':
horses.cpp:81:20: warning: conversion from 'double' to 'll' {aka 'long long int'} may change value [-Wfloat-conversion]
81 | MXTO(ans,mult(pow(2.0,pref[i]),y[i]));
| ~~~^~~~~~~~~~~~~
horses.cpp:40:42: note: in definition of macro 'MXTO'
40 | #define MXTO(x,y) x=max(x,(__typeof__(x))y)
| ^
horses.cpp:83:9: warning: conversion from 'll' {aka 'long long int'} to 'int' may change value [-Wconversion]
83 | return ans;
| ^~~
horses.cpp: In function 'int updateY(int, int)':
horses.cpp:93:20: warning: conversion from 'double' to 'll' {aka 'long long int'} may change value [-Wfloat-conversion]
93 | MXTO(ans,mult(pow(2.0,pref[i]),y[i]));
| ~~~^~~~~~~~~~~~~
horses.cpp:40:42: note: in definition of macro 'MXTO'
40 | #define MXTO(x,y) x=max(x,(__typeof__(x))y)
| ^
horses.cpp:95:9: warning: conversion from 'll' {aka 'long long int'} to 'int' may change value [-Wconversion]
95 | return ans;
| ^~~