Submission #17775

#TimeUsernameProblemLanguageResultExecution timeMemory
17775AdilkhanEnergetic turtle (IZhO11_turtle)C++98
40 / 100
151 ms82780 KiB
#include <bits/stdc++.h> #define pb push_back #define endl "\n" #define mp make_pair #define fi first #define se second #define all(x) x.begin(), x.end() #define fname "" #define sz(x) (int)(x.size()) typedef long long ll; using namespace std; const ll N = (ll)(5e5) + 322; const ll INF = (ll)(1e9); const ll mod = (ll)(1e9) + 7; const double eps = 1e-9; int n, m, a[2890000], d[2890000][21], z, k, t, x, y, sum; inline int cv(int x, int y) { return (x * (m + 1)) + y; } int main () { //freopen(fname".in", "r", stdin); //freopen(fname".out", "w", stdout); scanf("%d%d%d%d%d", &n, &m, &k, &t, &z); for (int i = 1; i <= k; ++i) { scanf("%d%d", &x, &y); a[cv(x, y)] = 1; } d[cv(0, 0)][0] = 1; for (int i = 0; i <= n; ++i) { for (int j = 0; j <= m; ++j) { if (i == 0 && j == 0) continue; if (a[cv(i, j)] == 1) { for (int q = 1; q <= t; ++q) { if (i != 0) d[cv(i, j)][q] += d[cv(i - 1, j)][q - 1]; if (j != 0) d[cv(i, j)][q] += d[cv(i, j - 1)][q - 1]; d[cv(i, j)][q] %= z; } }else { for (int q = 0; q <= t; ++q) { if (i != 0) d[cv(i, j)][q] += d[cv(i - 1, j)][q]; if (j != 0) d[cv(i, j)][q] += d[cv(i, j - 1)][q]; d[cv(i, j)][q] %= z; } } } } for (int i = 0; i <= t; ++i) { sum += d[cv(n, m)][i]; sum %= z; } printf("%d", sum); return 0; }

Compilation message (stderr)

turtle.cpp: In function 'int main()':
turtle.cpp:30:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d%d%d%d%d", &n, &m, &k, &t, &z);
  ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
turtle.cpp:32:9: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
    scanf("%d%d", &x, &y);
    ~~~~~^~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...