Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
110087 | 朱悦晨 | 跳石头 | C++ | 通过 | 100 | 14 MS | 652 KB | 507 | 2023-11-12 14:46:40 |
#include <bits/stdc++.h> using namespace std; long long L,n,m,q,a[10000005]; long long fenzhi(int x){ int count=0,last=0; for(int i=1;i<=n;i++) if(a[i]-last<x) count++; else last=a[i]; if(count>m) return 0; return 1; } int main(){ cin>>L>>n>>m; for(int i=1;i<=n;i++)cin>>a[i]; a[n+1]=L; int l=0,r=L; while(l<=r){ long long mid=(l+r)/2; if(fenzhi(mid)){ l=mid+1; q=mid; } else r=mid-1; } cout<<q; return 0; }