Submission #609267

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
6092672022-07-27 13:07:43MrDebooHorses (IOI15_horses)C++17
100 / 100
823 ms68976 KiB
#include "horses.h"
#include "bits/stdc++.h"
using namespace std;
long long multpl[2000000];
long long maxi[2000000];
long long X[500000];
set<int>st;
int n,N,L,R;
long long multp(int l=1,int r=N,int in=1){
if(l>R||r<L)return 1;
if(l>=L&&r<=R)return multpl[in];
int mid=(l+r)/2;
return (multp(l,mid,in*2)*multp(mid+1,r,in*2+1))%1000000007;
}
long long mx(int l=1,int r=N,int in=1){
if(l>R||r<L)return 0;
if(l>=L&&r<=R)return maxi[in];
int mid=(l+r)/2;
return max(mx(l,mid,in*2),mx(mid+1,r,in*2+1));
}
int slv(){
deque<int>v;
int g=31;
auto it=st.end();
while(it!=st.begin()&&g--){
it--;
v.push_back(*it);
}
sort(v.begin(),v.end());
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

horses.cpp: In function 'int slv()':
horses.cpp:34:15: warning: comparison of integer expressions of different signedness: 'int' and 'std::deque<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   34 |  for(int i=0;i<v.size();i++){
      |              ~^~~~~~~~~
horses.cpp:45:6: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
   45 |  R=in+1;
      |    ~~^~
horses.cpp:47:6: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
   47 |  L=in+1;
      |    ~~^~
horses.cpp:50:12: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
   50 |  return ans%1000000007;
      |         ~~~^~~~~~~~~~~
horses.cpp: In function 'int init(int, int*, int*)':
horses.cpp:55:8: warning: conversion from 'double' to 'int' may change value [-Wfloat-conversion]
   55 |  N=exp2(ceil(log2(n)));
      |    ~~~~^~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...