horses.cpp: In member function 'void BIT::init(long long int, long long int (*)(long long int, long long int))':
horses.cpp:16:15: warning: declaration of 'id' shadows a member of 'BIT' [-Wshadow]
16 | void init(ll id, ll (*f)(ll, ll)) {
| ^
horses.cpp:15:22: note: shadowed declaration is here
15 | ll bit[MAXN] = {0}, id;
| ^~
horses.cpp: At global scope:
horses.cpp:42:63: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
42 | void upd(int pos, int val, int v = 0, int tl = 0, int tr = N - 1){
| ~~^~~
horses.cpp:55:57: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
55 | ll max(int l, int r, int v = 0, int tl = 0, int tr = N - 1){
| ~~^~~
horses.cpp: In function 'long long int add(long long int, long long int)':
horses.cpp:66:17: warning: declaration of 'y' shadows a global declaration [-Wshadow]
66 | ll add(ll x, ll y) { return x + y; }
| ^
horses.cpp:12:13: note: shadowed declaration is here
12 | ll x[MAXN], y[MAXN];
| ^
horses.cpp:66:11: warning: declaration of 'x' shadows a global declaration [-Wshadow]
66 | ll add(ll x, ll y) { return x + y; }
| ^
horses.cpp:12:4: note: shadowed declaration is here
12 | ll x[MAXN], y[MAXN];
| ^
horses.cpp: In function 'long long int mul(long long int, long long int)':
horses.cpp:67:17: warning: declaration of 'y' shadows a global declaration [-Wshadow]
67 | ll mul(ll x, ll y) { return x * y % MOD; }
| ^
horses.cpp:12:13: note: shadowed declaration is here
12 | ll x[MAXN], y[MAXN];
| ^
horses.cpp:67:11: warning: declaration of 'x' shadows a global declaration [-Wshadow]
67 | ll mul(ll x, ll y) { return x * y % MOD; }
| ^
horses.cpp:12:4: note: shadowed declaration is here
12 | ll x[MAXN], y[MAXN];
| ^
horses.cpp: In function 'long long int query()':
horses.cpp:80:19: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
80 | ll v = RMQ::max(*ptr, *next(ptr) - 1);
| ^~~~
horses.cpp:80:36: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
80 | ll v = RMQ::max(*ptr, *next(ptr) - 1);
| ~~~~~~~~~~~^~~
horses.cpp:80:39: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
80 | ll v = RMQ::max(*ptr, *next(ptr) - 1);
| ^
horses.cpp: In function 'int init(int, int*, int*)':
horses.cpp:90:14: warning: declaration of 'N' shadows a global declaration [-Wshadow]
90 | int init(int N, int X[], int Y[]) {
| ~~~~^
horses.cpp:38:4: note: shadowed declaration is here
38 | ll N;
| ^
horses.cpp:109:18: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
109 | RMQ::upd(i, y[i]);
| ~~~^
horses.cpp:109:19: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
109 | RMQ::upd(i, y[i]);
| ^
horses.cpp:111:14: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
111 | return query();
| ~~~~~^~
horses.cpp: In function 'int updateX(int, int)':
horses.cpp:122:14: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
122 | return query();
| ~~~~~^~
horses.cpp: In function 'int updateY(int, int)':
horses.cpp:127:19: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
127 | RMQ::upd(pos, val);
| ^
horses.cpp:128:14: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
128 | return query();
| ~~~~~^~