QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#240507 | #7642. Integer Half-Sum | OOBMABTRAMS# | AC ✓ | 1ms | 3516kb | C++17 | 1.2kb | 2023-11-05 16:00:33 | 2023-11-05 16:00:33 |
Judging History
answer
#include "bits/stdc++.h"
using namespace std;
typedef long long ll;
const int N=1000003;
const int mod=1e9+7;
ll a[N];
void solve(){
int l,r;
cin>>l>>r;
multiset<int>s[2];
for(int i=l;i<=r;i++)s[i&1].insert(i);
while(true){
if(s[0].size()==1&&s[1].size()==1){
cout<<-1<<'\n';
return;
}
if(s[0].size()==1&&s[1].empty()){
cout<<*s[0].begin()<<'\n';
return;
}
if(s[1].size()==1&&s[0].empty()){
cout<<*s[1].begin()<<'\n';
return;
}
if(*s[0].begin()<*s[1].begin()&&s[0].size()>=2||s[1].size()<=1){
int x=*s[0].begin();
s[0].erase(s[0].find(x));
int y=*s[0].begin();
s[0].erase(s[0].find(y));
x=(x+y)/2;
s[x&1].insert(x);
}else{
int x=*s[1].begin();
s[1].erase(s[1].find(x));
int y=*s[1].begin();
s[1].erase(s[1].find(y));
x=(x+y)/2;
s[x&1].insert(x);
}
}
}
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
int TT=1;
// cin>>TT;
while(TT--)solve();
}
詳細信息
Test #1:
score: 100
Accepted
time: 1ms
memory: 3408kb
input:
2 4
output:
3
result:
ok 1 number(s): "3"
Test #2:
score: 0
Accepted
time: 1ms
memory: 3396kb
input:
1 1
output:
1
result:
ok 1 number(s): "1"
Test #3:
score: 0
Accepted
time: 0ms
memory: 3512kb
input:
1 2
output:
-1
result:
ok 1 number(s): "-1"
Test #4:
score: 0
Accepted
time: 0ms
memory: 3392kb
input:
100 100
output:
100
result:
ok 1 number(s): "100"
Test #5:
score: 0
Accepted
time: 1ms
memory: 3404kb
input:
99 100
output:
-1
result:
ok 1 number(s): "-1"
Test #6:
score: 0
Accepted
time: 0ms
memory: 3400kb
input:
3 3
output:
3
result:
ok 1 number(s): "3"
Test #7:
score: 0
Accepted
time: 0ms
memory: 3512kb
input:
2 3
output:
-1
result:
ok 1 number(s): "-1"
Test #8:
score: 0
Accepted
time: 0ms
memory: 3448kb
input:
1 3
output:
2
result:
ok 1 number(s): "2"
Test #9:
score: 0
Accepted
time: 0ms
memory: 3512kb
input:
2 5
output:
4
result:
ok 1 number(s): "4"
Test #10:
score: 0
Accepted
time: 1ms
memory: 3444kb
input:
3 7
output:
6
result:
ok 1 number(s): "6"
Test #11:
score: 0
Accepted
time: 0ms
memory: 3452kb
input:
3 8
output:
7
result:
ok 1 number(s): "7"
Test #12:
score: 0
Accepted
time: 0ms
memory: 3452kb
input:
4 10
output:
9
result:
ok 1 number(s): "9"
Test #13:
score: 0
Accepted
time: 1ms
memory: 3408kb
input:
35 37
output:
36
result:
ok 1 number(s): "36"
Test #14:
score: 0
Accepted
time: 0ms
memory: 3444kb
input:
43 46
output:
45
result:
ok 1 number(s): "45"
Test #15:
score: 0
Accepted
time: 0ms
memory: 3400kb
input:
82 86
output:
85
result:
ok 1 number(s): "85"
Test #16:
score: 0
Accepted
time: 0ms
memory: 3452kb
input:
55 60
output:
59
result:
ok 1 number(s): "59"
Test #17:
score: 0
Accepted
time: 0ms
memory: 3392kb
input:
25 31
output:
30
result:
ok 1 number(s): "30"
Test #18:
score: 0
Accepted
time: 0ms
memory: 3420kb
input:
37 44
output:
43
result:
ok 1 number(s): "43"
Test #19:
score: 0
Accepted
time: 0ms
memory: 3512kb
input:
75 83
output:
82
result:
ok 1 number(s): "82"
Test #20:
score: 0
Accepted
time: 0ms
memory: 3412kb
input:
74 83
output:
82
result:
ok 1 number(s): "82"
Test #21:
score: 0
Accepted
time: 0ms
memory: 3412kb
input:
88 98
output:
97
result:
ok 1 number(s): "97"
Test #22:
score: 0
Accepted
time: 0ms
memory: 3452kb
input:
75 86
output:
85
result:
ok 1 number(s): "85"
Test #23:
score: 0
Accepted
time: 1ms
memory: 3420kb
input:
1 100
output:
99
result:
ok 1 number(s): "99"
Test #24:
score: 0
Accepted
time: 0ms
memory: 3444kb
input:
1 50
output:
49
result:
ok 1 number(s): "49"
Test #25:
score: 0
Accepted
time: 0ms
memory: 3408kb
input:
50 100
output:
99
result:
ok 1 number(s): "99"
Test #26:
score: 0
Accepted
time: 0ms
memory: 3408kb
input:
7 35
output:
34
result:
ok 1 number(s): "34"
Test #27:
score: 0
Accepted
time: 1ms
memory: 3412kb
input:
87 95
output:
94
result:
ok 1 number(s): "94"
Test #28:
score: 0
Accepted
time: 0ms
memory: 3356kb
input:
11 30
output:
29
result:
ok 1 number(s): "29"
Test #29:
score: 0
Accepted
time: 1ms
memory: 3444kb
input:
47 69
output:
68
result:
ok 1 number(s): "68"
Test #30:
score: 0
Accepted
time: 0ms
memory: 3448kb
input:
11 48
output:
47
result:
ok 1 number(s): "47"
Test #31:
score: 0
Accepted
time: 0ms
memory: 3384kb
input:
71 85
output:
84
result:
ok 1 number(s): "84"
Test #32:
score: 0
Accepted
time: 0ms
memory: 3416kb
input:
84 89
output:
88
result:
ok 1 number(s): "88"
Test #33:
score: 0
Accepted
time: 0ms
memory: 3424kb
input:
22 56
output:
55
result:
ok 1 number(s): "55"
Test #34:
score: 0
Accepted
time: 1ms
memory: 3396kb
input:
2 72
output:
71
result:
ok 1 number(s): "71"
Test #35:
score: 0
Accepted
time: 0ms
memory: 3412kb
input:
18 55
output:
54
result:
ok 1 number(s): "54"
Test #36:
score: 0
Accepted
time: 0ms
memory: 3516kb
input:
4 11
output:
10
result:
ok 1 number(s): "10"
Test #37:
score: 0
Accepted
time: 1ms
memory: 3388kb
input:
42 59
output:
58
result:
ok 1 number(s): "58"
Test #38:
score: 0
Accepted
time: 0ms
memory: 3448kb
input:
52 79
output:
78
result:
ok 1 number(s): "78"
Test #39:
score: 0
Accepted
time: 0ms
memory: 3420kb
input:
11 48
output:
47
result:
ok 1 number(s): "47"
Test #40:
score: 0
Accepted
time: 1ms
memory: 3516kb
input:
4 51
output:
50
result:
ok 1 number(s): "50"
Test #41:
score: 0
Accepted
time: 0ms
memory: 3420kb
input:
3 60
output:
59
result:
ok 1 number(s): "59"
Test #42:
score: 0
Accepted
time: 0ms
memory: 3412kb
input:
21 88
output:
87
result:
ok 1 number(s): "87"
Test #43:
score: 0
Accepted
time: 0ms
memory: 3436kb
input:
17 94
output:
93
result:
ok 1 number(s): "93"
Test #44:
score: 0
Accepted
time: 1ms
memory: 3408kb
input:
11 98
output:
97
result:
ok 1 number(s): "97"
Test #45:
score: 0
Accepted
time: 0ms
memory: 3416kb
input:
2 99
output:
98
result:
ok 1 number(s): "98"
Extra Test:
score: 0
Extra Test Passed