0%

The 6th Liaoning Provincial Collegiate Programming Contest-2025-辽宁省赛-赛后 vp 总结

基本情况

乱打的,比较狗屎了。

image

心得感悟

感觉还是要做中国的省赛,感觉中国的题目和国外的题目还是风格有所不同吧。

题目 I take from the richer

就是这个排序一遍以后直接模拟。

不难发现,肯定是先选小的数,因为先选大的数,小的数就没法贡献了

这种一定要小心这个加上一个负数,要用这个 max 0ll 去兜底。

image

https://codeforces.com/gym/106380/submission/366235168

题目 Just reseat!

模拟题,不多说了。

https://codeforces.com/gym/106380/submission/366229614

题目 Do you play Ballance?

直接分类讨论。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
vector<A_b_c> A(N+2);
vector<ll> cnt(10);
for (int i=1;i<=N;++i) {
ll a,b,c;
cin>>a>>b>>c;
A[i]={a,b,c};
if (A[i]==A_b_c{1,0,0}) {
cnt[1]++;
}else if (A[i]==A_b_c{0,1,0}) {
cnt[2]++;
}else if (A[i]==A_b_c{0,0,1}){
cnt[3]++;
}
}
if (cnt[1] && cnt[2] && cnt[3]) {
cout<<3<<"\n";
return;
}
for (int i=1;i<=N;++i) {
if (A[i]==A_b_c{1,0,0}) {

}else if (A[i]==A_b_c{0,1,0}) {

}else if (A[i]==A_b_c{0,0,1}){

}else {
if (A[i].a && cnt[1]) {
++cnt[1];
}else if (A[i].b && cnt[2]) {
++cnt[2];
}else if (A[i].c && cnt[3]) {
++cnt[3];
}else if (A[i]==A_b_c{1,1,0}) {
++cnt[4];
}else if (A[i]==A_b_c{1,0,1}) {
++cnt[5];
}else if (A[i]==A_b_c{0,1,1}) {
++cnt[6];
}else if (A[i]==A_b_c{1,1,1}) {
++cnt[7];
}
}
}
ll ans1=ll(bool(cnt[1]))+ll(bool(cnt[2]))+ll(bool(cnt[3]));
ll ans2=ll(bool(cnt[4]))+ll(bool(cnt[5]))+ll(bool(cnt[6]));
ll ans=ans1;
if (ans1) {
if (ans2) {
++ans;
}
}else {
if (ans2<=2) {
ans=1;
}else {
ans=2;
}
}
if (ans==0 && cnt[7]) {
++ans;
}
cout<<ans<<"\n";

https://codeforces.com/gym/106380/submission/366228036