Submission #6500311


Source Code Expand

#include<bits/stdc++.h>

using namespace std;

int main(){
int R,C,D; cin >> R >> C >> D;
  
  vector<vector<int>> A(R,vector<int>(C));
  for(int i = 0; i < R; i++){
    for(int j = 0; j < C; j++){
      cin >> A[i][j];}}
  
  vector<vector<int>> visited(R,vector<int> (C,-1));
  visited[0][0] = 0;
  
  queue<pair<int,int>> Q; Q.push( make_pair(0,0));
  
  while(!Q.empty()){
    pair<int,int> p = Q.front(); Q.pop();
    //pから右か下の方向だけ行けばいい
    if( p.first < R - 1){ //下端に達していない場合
      if( visited[p.first + 1][p.second ] == -1){ //未更新
         visited[p.first + 1][p.second ] = visited[p.first][p.second] + 1;
          Q.push(make_pair(p.first + 1, p.second));}}
    if( p.second < C - 1){ //右端に達していない場合
      if( visited[p.first ][p.second  +1 ] == -1){ //未更新
         visited[p.first][p.second + 1] = visited[p.first][p.second] + 1;
         Q.push( make_pair(p.first,p.second + 1));}}
    
  }
  
  visited[0][0] = 2;
  
  int ans = 0;
  
 if( D % 2 == 0){
   //Dが偶数の時,
   for(int i = 0; i < R; i++){
     for(int j = 0; j < C; j++){
       if( visited[i][j] % 2 == 0 && visited[i][j] <= D){
         //Dと奇偶が同じでマス目の値がD以下の場合のみ考慮される
        ans = max( ans , A[i][j]);}}}
 }
  else{
    //Dが奇数の時
    for(int i = 0; i < R; i++){
      for(int j = 0; j < C; j++){
        if( visited[i][j] % 2 == 1 && visited[i][j] <= D){
          ans = max( ans, A[i][j]);}}}
  }
  
  cout << ans << endl; return 0;}
         
                     

Submission Info

Submission Time
Task B - 謎の人物X
User youyin
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1645 Byte
Status AC
Exec Time 232 ms
Memory 8192 KB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 60 / 60 40 / 40
Status
AC × 3
AC × 18
AC × 33
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
Subtask1 sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt
Subtask2 sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 256 KB
sample_02.txt AC 1 ms 256 KB
sample_03.txt AC 1 ms 256 KB
subtask1_01.txt AC 1 ms 256 KB
subtask1_02.txt AC 1 ms 256 KB
subtask1_03.txt AC 1 ms 256 KB
subtask1_04.txt AC 3 ms 384 KB
subtask1_05.txt AC 1 ms 256 KB
subtask1_06.txt AC 2 ms 256 KB
subtask1_07.txt AC 3 ms 256 KB
subtask1_08.txt AC 3 ms 384 KB
subtask1_09.txt AC 3 ms 384 KB
subtask1_10.txt AC 3 ms 384 KB
subtask1_11.txt AC 3 ms 384 KB
subtask1_12.txt AC 3 ms 384 KB
subtask1_13.txt AC 3 ms 384 KB
subtask1_14.txt AC 3 ms 384 KB
subtask1_15.txt AC 3 ms 384 KB
subtask2_01.txt AC 2 ms 256 KB
subtask2_02.txt AC 2 ms 384 KB
subtask2_03.txt AC 71 ms 2688 KB
subtask2_04.txt AC 2 ms 256 KB
subtask2_05.txt AC 10 ms 512 KB
subtask2_06.txt AC 38 ms 1536 KB
subtask2_07.txt AC 170 ms 8192 KB
subtask2_08.txt AC 228 ms 8192 KB
subtask2_09.txt AC 226 ms 8192 KB
subtask2_10.txt AC 226 ms 8192 KB
subtask2_11.txt AC 196 ms 8192 KB
subtask2_12.txt AC 226 ms 8192 KB
subtask2_13.txt AC 228 ms 8192 KB
subtask2_14.txt AC 228 ms 8192 KB
subtask2_15.txt AC 232 ms 8192 KB