QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#510286 | #7102. Live Love | Leizijin | AC ✓ | 0ms | 3816kb | C++14 | 1.0kb | 2024-08-09 01:22:46 | 2024-08-09 01:22:47 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define ull unsigned long long
#define pb push_back
#define pii pair<ll,ll>
#define il inline
#define fastio ios::sync_with_stdio(false), cin.tie(0)
// 一道好题
// 为什么那么多差评?
// 最长:拼一起进行了
// 最短:最长最小,明摆着二分答案
// 那么,考虑二分的长度为k
// 设当前长度L, 那么L * (m/L) + m%L + (m%L ? m/L : m/L-1 ) <= n
// n=m=10时:l*(10/l) + 10%l + (10%l ? 10/l : 10/l - 1) <= 10
void work(){
int n,m;
cin >> n >> m;
ll l=1,r=n,mid;
printf("%d %d\n",m,n/(n-m+1)); // 二分个毛
}
void work2(){
int n,m;
cin >> n >> m;
ll l=1,r=n,mid;
if(!m){
printf("%d 0\n",m);
return ;
}
ll flag = n%m ? 0 : -1, lastmid = n;
while(l<r){
mid = l+r>>1;
if(mid * (m/mid) + m%mid + m/mid + (m%mid ? 0 : -1) <= n) r=mid,lastmid = mid;
else l=mid+1;
}
printf("%d %d\n",m,lastmid);
return ;
}
signed main(){
fastio;
int T;
cin >> T;
while(T--) work2();
return 0;
}
这程序好像有点Bug,我给组数据试试?
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3816kb
input:
5 5 4 100 50 252 52 3 0 10 10
output:
4 2 50 1 52 1 0 0 10 10
result:
ok 5 lines
Test #2:
score: 0
Accepted
time: 0ms
memory: 3816kb
input:
100 13 3 384 171 94 36 581 70 782 715 651 287 810 789 353 314 2 2 65 47 684 194 242 213 135 42 695 484 512 195 14 0 721 253 665 257 381 78 456 220 1000 500 1000 501 31 31 703 484 137 1 271 55 666 366 966 316 457 248 166 38 716 679 972 258 627 91 380 1 451 436 605 173 987 780 457 180 2 0 718 574 119 ...
output:
3 1 171 1 36 1 70 1 715 11 287 1 789 36 314 8 2 2 47 3 194 1 213 8 42 1 484 3 195 1 0 0 253 1 257 1 78 1 220 1 500 1 501 2 31 31 484 3 1 1 55 1 366 2 316 1 248 2 38 1 679 18 258 1 91 1 1 1 436 28 173 1 780 4 180 1 0 0 574 4 8 1 118 1 126 1 12 2 34 1 381 21 658 4 288 4 161 1 76 1 195 1 646 6 27 1 9 2...
result:
ok 100 lines
Extra Test:
score: 0
Extra Test Passed