謎の人物X
問題
B – 謎の人物X
プログラミング初級者から上級者まで楽しめる、競技プログラミングコンテストサイト「AtCoder」。オンラインで毎週開催プログラミングコンテストを開催しています。競技…
記録
- この問題の提出記録はこちら
- 【解法○ 実装×】 2022/01/21 まどろっこしい方法を採用してしまいWAを多発。なんとかACしたもの(良くない例)はこちら
解法
- \(D\) 回でマス \((i,j)\) に行くことができる条件は次の2つの条件を満たす必要がある。
- 【条件1】 \(i+j \leq D\)
- 【条件2】 \(i+j\) と \(D\) の偶奇が同じ。
コード例
#include <bits/stdc++.h> using namespace std; #include <atcoder/all> using namespace atcoder; using ll = long long; using P = pair<int, int>; #define rep(i, n) for(int i = 0; i < (n); ++i) // using mint = modint998244353; // using mint = modint1000000007; // const int mod = 1000000007; // const ll INF = 1LL << 60; // const int INF = 1001001001; int main() { int R, C, D; cin >> R >> C >> D; vector<vector<int>> A(R, vector<int>(C)); rep(i, R) { rep(j, C) { cin >> A[i][j]; } } int ans = 0; rep(i, R) { rep(j, C) { if((i + j) <= D && (i + j) % 2 == D % 2) { ans = max(ans, A[i][j]); } } } cout << ans << endl; return 0; }