# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
28801 | 2017-07-17T08:25:09 Z | ozaslan | Rice Hub (IOI11_ricehub) | C++14 | 0 ms | 0 KB |
#include "ricehub.h" #include<bits/stdc++.h> #include "ricehub.h" #include <stdio.h> #include <stdlib.h> #define MAX_R 1000000 using namespace std; /* static int R, L; static long long B; static int X[MAX_R]; static int solution; inline void my_assert(int e) {if (!e) abort();} static void read_input() { int i; my_assert(3==scanf("%d %d %lld",&R,&L,&B)); for(i=0; i<R; i++) my_assert(1==scanf("%d",&X[i])); my_assert(1==scanf("%d",&solution)); //printf("Kontrol 0\n"); }*/ int main() { int ans; read_input(); ans = besthub(R,L,X,B); if(ans==solution) printf("Correct.\n"); else printf("Incorrect. Returned %d instead of %d.\n",ans,solution); return 0; } int besthub(int R, int L, int X[], long long B) { // printf("Kontrol 1\n"); long long enIyi = 0, uzak[10000]; for (int i = 0; i <= L; i++) { for (int j = 0; j < R; j++) uzak[j] = abs(i - X[j]); sort(uzak, uzak+R-1); long long toplam = 0, k; for (k = 0; k < R && toplam <= B; k++) toplam += uzak[k]; enIyi = max(enIyi, k); } return enIyi; }