제출 #1331793

#제출 시각아이디문제언어결과실행 시간메모리
1331793alexaaa쌀 창고 (IOI11_ricehub)C++20
0 / 100
1 ms344 KiB
#include "ricehub.h"
using namespace std;
#include<bits/stdc++.h>

//solution to solve only subtask 1
int max_count = 0;
void maximize(int coordinate,int b, int a, int R,int X[],long long B,int count, long long total){
  if(total > B||coordinate >= R||(b < 0 && a >= R)){
    max_count = max(max_count,count);
    return;
  }
  if(b >= 0 && a < R){
    if(abs(coordinate-X[b])< abs(coordinate-X[a])){
      maximize(coordinate,b-1,a,R,X,B,count+1,total+abs(coordinate-X[b]));
    }
    else{
        maximize(coordinate,b,a+1,R,X,B,count+1,total+abs(coordinate-X[a]));
    }
  }
  else if(b < 0 && a < R){
    maximize(coordinate,b,a+1,R,X,B,count+1,total+abs(coordinate-X[a]));
  }
  else if(b >= 0 && a >= R){
    maximize(coordinate,b-1,a,R,X,B,count+1,total+abs(coordinate-X[b]));
  }
  maximize(coordinate+1,coordinate,coordinate+1,R,X,B,0,0);
}
int besthub(int R, int L, int X[], long long B)
{
 maximize(0,0,1,R,X,B,0,0);
 return max_count;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...