Submission #165532

#TimeUsernameProblemLanguageResultExecution timeMemory
165532ArKCaCipele (COCI18_cipele)C++17
0 / 90
252 ms262148 KiB
#include<bits/stdc++.h> using namespace std; int n,k,m; int dizi1[20005],dizi2[20005],dp[20005][20005]; int dpf(int crr,int r){ if(crr==(n-1)){ int mn=INT_MAX; for(int i=r;i<m;i++){ mn=min(mn,abs(dizi1[crr]-dizi2[i]) ); } dp[crr][r]=mn; return dp[crr][r]; } if( (n-crr) > (m-r) ){ return INT_MAX; } if(dp[crr][r]!=-1){ return dp[crr][r]; } int mn=INT_MAX; // printf("a\n"); for(int i=r;i<m;i++){ mn=min(mn,max( abs(dizi1[crr]-dizi2[i] ),dpf(crr+1,i+1) ) ); } dp[crr][r]=mn; return dp[crr][r]; } int main(){ // freopen("a.gir","r",stdin); // freopen("a.cik","w",stdout); for(int i=0;i<20002;i++){ for(int j=0;j<20002;j++){ dp[i][j]=-1; } } scanf("%d %d",&n,&m); if(n==m){ int mx=0; for(int i=0;i<n;i++){ scanf("%d",&dizi1[i]); } for(int i=0;i<n;i++){ scanf("%d",&dizi2[i]); } sort(dizi1,dizi1+n); sort(dizi2,dizi2+m); for(int i=0;i<n;i++){ mx=max(abs(dizi2[i]-dizi1[i]),mx); } printf("%d\n",mx ); return 0; } if(n<m){ for(int i=0;i<n;i++){ scanf("%d",&dizi1[i]); } for(int i=0;i<m;i++){ scanf("%d",&dizi2[i]); } sort(dizi1,dizi1+n); sort(dizi2,dizi2+m); printf("%d\n",dpf(0,0) ); return 0; } else{ for(int i=0;i<n;i++){ scanf("%d",&dizi2[i]); } for(int i=0;i<m;i++){ scanf("%d",&dizi1[i]); } swap(n,m); sort(dizi1,dizi1+n); sort(dizi2,dizi2+m); printf("%d\n",dpf(0,0) ); return 0; } }

Compilation message (stderr)

cipele.cpp: In function 'int main()':
cipele.cpp:39:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d %d",&n,&m);
  ~~~~~^~~~~~~~~~~~~~~
cipele.cpp:43:9: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
    scanf("%d",&dizi1[i]);
    ~~~~~^~~~~~~~~~~~~~~~
cipele.cpp:46:9: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
    scanf("%d",&dizi2[i]);
    ~~~~~^~~~~~~~~~~~~~~~
cipele.cpp:58:9: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
    scanf("%d",&dizi1[i]);
    ~~~~~^~~~~~~~~~~~~~~~
cipele.cpp:61:9: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
    scanf("%d",&dizi2[i]);
    ~~~~~^~~~~~~~~~~~~~~~
cipele.cpp:70:9: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
    scanf("%d",&dizi2[i]);
    ~~~~~^~~~~~~~~~~~~~~~
cipele.cpp:73:9: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
    scanf("%d",&dizi1[i]);
    ~~~~~^~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...