답안 #620932

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
620932 2022-08-03T10:28:25 Z A_D 말 (IOI15_horses) C++14
0 / 100
21 ms 15192 KB
#include "horses.h"
 
#include <bits/stdc++.h>
 
using namespace std;
 
const int N=2e5+100;
long long x[N];
long long y[N];
int suf[N];
const long long MOD=1e9+7;
int n;

long long me=1;


long long po(long long b,long long p)
{
    if(p==0)return 1;
    if(p==1)return b;
    if(p%2){
        return (b*po(b,p-1))%MOD;
    }
    long long r=po(b,p/2);
    return (r*r)%MOD;
}

long long modinv(int v)
{
    return po(v,MOD-2);
}



int getans()
{
    long long ret=0,sum=1,sum2=1,val=0;
    for(int i=n-31;i<n;i++){
        sum*=x[i];
        sum%=MOD;
        sum2*=x[i];
        if(sum2*y[i]>val){
            ret=(sum*y[i])%MOD;
            sum2=1;
            val=y[i];
        }
    }
    ret*=me;
    ret%=MOD;
    return (int)ret;
}
 
 
int init(int N, int X[], int Y[]){
    n=N;
    for(int i=0;i<n;i++){
        x[i]=X[i];
        y[i]=Y[i];
        
    }
    for(int i=0;i<n-31;i++){
        me*=x[i];
        me%=MOD;
    }
    return getans();
 
}
 
int updateX(int pos, int val) {
    me*=modinv(x[pos]);
    me*=MOD;
	x[pos]=val;
    me*=x[pos];
    me*=MOD;
    
    return getans();
 
}
 
int updateY(int pos, int val) {
	y[pos]=val;
 
    return getans();
}

Compilation message

horses.cpp: In function 'int init(int, int*, int*)':
horses.cpp:54:14: warning: declaration of 'N' shadows a global declaration [-Wshadow]
   54 | int init(int N, int X[], int Y[]){
      |          ~~~~^
horses.cpp:7:11: note: shadowed declaration is here
    7 | const int N=2e5+100;
      |           ^
horses.cpp: In function 'int updateX(int, int)':
horses.cpp:70:21: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
   70 |     me*=modinv(x[pos]);
      |                ~~~~~^
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 21 ms 15192 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -