제출 #448795

#제출 시각아이디문제언어결과실행 시간메모리
448795IvnFRelativnost (COCI15_relativnost)C++17
0 / 140
4097 ms18624 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define pb push_back #define ull unsigned long long #define fi first #define se second #define ld long double const ll mod=10007; int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); ll n, c, q; cin >> n >> c; ll dp[n+5][c+5], a[n+5], b[n+5]; memset(dp, 0, sizeof dp); for(int i=1;i<=n;++i){ cin >> a[i]; } for(int i=1;i<=n;++i){ cin >> b[i]; } dp[0][0]=1; for(int i=1;i<=n;++i){ for(int j=0;j<=c;++j){ dp[i][j]=(a[i]*dp[i-1][max(0, j-1)])%mod; dp[i][j]+=(b[i]*dp[i-1][j])%mod; } } cin >> q; while(q--){ ll idx, ai, bi; cin >> idx >> ai >> bi; a[idx]=ai; b[idx]=bi; for(int i=idx;i<=n;++i){ for(int j=0;j<=c;++j){ dp[i][j]=(a[i]*dp[i-1][max(0, j-1)])%mod; dp[i][j]+=(b[i]*dp[i-1][j])%mod; } } cout << dp[n][c] << '\n'; } }
#Verdict Execution timeMemoryGrader output
Fetching results...