제출 #620632

#제출 시각아이디문제언어결과실행 시간메모리
620632HazemHorses (IOI15_horses)C++14
17 / 100
18 ms16772 KiB
#include <bits/stdc++.h>
#define LL long long

using namespace std;

const int M = 2e5+10;
const int MOD = 1e9+7;

LL add(LL a,LL b){
	return (a+b)%MOD;
}

LL mult(LL a,LL b){
	return (a*b)%MOD;
}

LL a[M],b[M],n;

LL calc(){

	LL ans = 0,cur = 1;
	for(int i=1;i<=n;i++){
		cur = mult(cur,a[i]);
		ans = max(ans,mult(cur,b[i]));
	}

	return ans;
}

int init(int N, int X[], int Y[]) {
	
	n = N;
	a[0] = 1;
	for(int i=1;i<=n;i++)
		a[i] = X[i-1],b[i] = Y[i-1];

	return calc();
}

int updateX(int pos, int val) {	
	
	a[pos+1] = val;

	return calc();
}

int updateY(int pos, int val) {
	
	b[pos+1] = val;

	return calc();
}

컴파일 시 표준 에러 (stderr) 메시지

horses.cpp: In function 'int init(int, int*, int*)':
horses.cpp:37:13: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
   37 |  return calc();
      |         ~~~~^~
horses.cpp: In function 'int updateX(int, int)':
horses.cpp:44:13: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
   44 |  return calc();
      |         ~~~~^~
horses.cpp: In function 'int updateY(int, int)':
horses.cpp:51:13: warning: conversion from 'long long int' to 'int' may change value [-Wconversion]
   51 |  return calc();
      |         ~~~~^~
#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...