제출 #801960

#제출 시각아이디문제언어결과실행 시간메모리
801960jlallas384말 (IOI15_horses)C++17
0 / 100
1565 ms12148 KiB
#include "horses.h" #include <bits/stdc++.h> using namespace std; using ll = long long; const int mod = 1e9 + 7; vector<int> x, y; int n; int solve(){ int ans = 0; int hv = 1; for(int i = 0; i < n; i++){ hv = (ll) hv * x[i] % mod; if(y[i] > y[i + 1]){ ans = (ans + ll(hv - 1 + mod) % mod * y[i]) % mod; hv = 1; } } return ans; } int init(int N, int X[], int Y[]) { n = N; x.resize(n), y.resize(n); for(int i = 0; i < n; i++){ x[i] = X[i]; y[i] = Y[i]; } y.push_back(-1); return solve(); } int updateX(int pos, int val) { x[pos] = val; return solve(); } int updateY(int pos, int val) { y[pos] = val; return solve(); }

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

horses.cpp: In function 'int solve()':
horses.cpp:14:23: warning: conversion from 'll' {aka 'long long int'} to 'int' may change value [-Wconversion]
   14 |   hv = (ll) hv * x[i] % mod;
      |        ~~~~~~~~~~~~~~~^~~~~
horses.cpp:16:48: warning: conversion from 'll' {aka 'long long int'} to 'int' may change value [-Wconversion]
   16 |    ans = (ans + ll(hv - 1 + mod) % mod * y[i]) % mod;
      |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
#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...