牛客周赛Round-94

这一场我感觉偏推理场吧,主要被前面的题目唬到了,然后后面做起来有点害怕,看到了那个类似 成都赛场上面没做出来的一个签到题目,感觉心里很慌。

2024成都区域赛A-Arrow a Row

E-小苯的数字操作

[!NOTE]
知识点:对于一个数字的二进制形式,$\times$ 2 相当于在二进制后面新增0,$\div$ 2 相当于删除二进制的最后一位

有一个坑:如果当 n 为 1的时候,是不要进行特判里面的,因为如果为 1 的时候,他的2 的倍数一定是早就出现过的

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
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define fr first
#define sc second
#define endl '\n'
using PII = pair<int,int>;
signed main(){
int t;
cin >> t;
while(t--){
int n, k;
cin >> n >> k;
int ans = k + 1;
for(int i = 1; i <= k; i++){
if(n % 2 != 0 && n != 1){
ans += (k - i);
}
ans ++;
n /= 2;
if(n == 0){
break;
}
}
cout << ans << endl;
}
return 0;
}



F-小苯的小球分组

有一个结论

结论
定义小球集合$\Bbb S$的函数 $f(\Bbb S)$,表示将小球集合 $\Bbb S$ 分为若干组,满足以下所有条件的最少分组个数:

  • 每组最多有 2 个球
  • 组内有 2 个球的组,这 2 个球的颜色不同。
    **这个的最小分组个数为 :$max(a_{max},(sum/2)_{向上取整})$
作者

Jiely

发布于

2025-05-29

更新于

2025-05-30

许可协议

评论

:D 一言句子获取中...