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:58: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
55 | int 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:67:17: warning: declaration of 'y' shadows a global declaration [-Wshadow]
67 | 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:67:11: warning: declaration of 'x' shadows a global declaration [-Wshadow]
67 | 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:68:17: warning: declaration of 'y' shadows a global declaration [-Wshadow]
68 | 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:68:11: warning: declaration of 'x' shadows a global declaration [-Wshadow]
68 | 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:81:20: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
81 | int v = RMQ::max(*ptr, *next(ptr) - 1);
| ^~~~
horses.cpp:81:37: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
81 | int v = RMQ::max(*ptr, *next(ptr) - 1);
| ~~~~~~~~~~~^~~
horses.cpp:81:40: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
81 | int v = RMQ::max(*ptr, *next(ptr) - 1);
| ^
horses.cpp: In function 'int init(int, int*, int*)':
horses.cpp:91:14: warning: declaration of 'N' shadows a global declaration [-Wshadow]
91 | int init(int N, int X[], int Y[]) {
| ~~~~^
horses.cpp:38:4: note: shadowed declaration is here
38 | ll N;
| ^
horses.cpp:110:18: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
110 | RMQ::upd(i, y[i]);
| ~~~^
horses.cpp:110:19: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
110 | RMQ::upd(i, y[i]);
| ^
horses.cpp:112:14: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
112 | return query();
| ~~~~~^~
horses.cpp: In function 'int updateX(int, int)':
horses.cpp:123:14: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
123 | return query();
| ~~~~~^~
horses.cpp: In function 'int updateY(int, int)':
horses.cpp:128:19: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
128 | RMQ::upd(pos, val);
| ^
horses.cpp:129:14: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
129 | return query();
| ~~~~~^~