horses.cpp: In function 'int rnd(int)':
horses.cpp:18:33: warning: conversion from 'std::mersenne_twister_engine<long unsigned int, 32, 624, 397, 31, 2567483615, 11, 4294967295, 7, 2636928640, 15, 4022730752, 18, 1812433253>::result_type' {aka 'long unsigned int'} to 'int' may change value [-Wconversion]
18 | int rnd(int x) { return mrand() % x;}
| ~~~~~~~~^~~
horses.cpp: In function 'void build(int, int, int)':
horses.cpp:58:16: warning: conversion from 'll' {aka 'long long int'} to '__gnu_cxx::__enable_if<true, double>::__type' {aka 'double'} may change value [-Wconversion]
58 | nd[p].mx=ps[l]+log10(b[l]);
| ~~~~^
horses.cpp:62:10: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
62 | int md=l+r>>1;
| ~^~
horses.cpp: In function 'void modify(int, int, int, int, int, db, ll)':
horses.cpp:77:10: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
77 | int md=l+r>>1;
| ~^~
horses.cpp: In function 'll init(int, int*, int*)':
horses.cpp:85:27: warning: conversion from 'll' {aka 'long long int'} to '__gnu_cxx::__enable_if<true, double>::__type' {aka 'double'} may change value [-Wconversion]
85 | rep(i,1,n+1) ps[i]=ps[i-1]+log10(x[i]);
| ~~~~~~^
horses.cpp:85:28: warning: conversion from '__gnu_cxx::__enable_if<true, double>::__type' {aka 'double'} to 'll' {aka 'long long int'} may change value [-Wfloat-conversion]
85 | rep(i,1,n+1) ps[i]=ps[i-1]+log10(x[i]);
| ~~~~~~~^~~~~~~~~~~~
horses.cpp: In function 'void updateX(int, int)':
horses.cpp:92:18: warning: unused parameter 'pos' [-Wunused-parameter]
92 | void updateX(int pos,int val) {
| ~~~~^~~
horses.cpp:92:26: warning: unused parameter 'val' [-Wunused-parameter]
92 | void updateX(int pos,int val) {
| ~~~~^~~
horses.cpp: In function 'void updateY(int, int)':
horses.cpp:96:18: warning: unused parameter 'pos' [-Wunused-parameter]
96 | void updateY(int pos,int val) {
| ~~~~^~~
horses.cpp:96:26: warning: unused parameter 'val' [-Wunused-parameter]
96 | void updateY(int pos,int val) {
| ~~~~^~~