# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
471727 | rainboy | Automobil (COCI17_automobil) | C11 | 18 ms | 8120 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <stdio.h>
#define N 1000000
#define M 1000000
#define MD 1000000007
int main() {
static int aa[N], bb[M];
int n, m, k, i, j, a, b, c, d;
scanf("%d%d%d", &n, &m, &k);
for (i = 0; i < n; i++)
aa[i] = 1;
for (j = 0; j < m; j++)
bb[j] = 1;
while (k--) {
static char s[2];
int x;
scanf("%s", s);
if (s[0] == 'R') {
scanf("%d%d", &i, &x), i--;
aa[i] = (long long) aa[i] * x % MD;
} else {
scanf("%d%d", &j, &x), j--;
bb[j] = (long long) bb[j] * x % MD;
}
}
/* (i m + j + 1) aa[i] bb[j] = (i aa[i] bb[j]) m + (j bb[j] aa[i]) + aa[i] bb[j] */
a = 0, c = 0;
for (i = 0; i < n; i++)
a = (a + aa[i]) % MD, c = (c + (long long) aa[i] * i) % MD;
b = 0, d = 0;
for (j = 0; j < m; j++)
b = (b + bb[j]) % MD, d = (d + (long long) bb[j] * j) % MD;
printf("%lld\n", ((long long) b * c % MD * m % MD + (long long) a * d % MD + (long long) a * b % MD) % MD);
return 0;
}
컴파일 시 표준 에러 (stderr) 메시지
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |