题解,\(O(1)\)做法
简述
先从两个骰子入手,得出\([b+1,a+1]\)内的数出现次数最多
然后再加一个骰子相当于把分布图向右平移c个单位的过程中,每平移一个单位的长度累加和,也就是以c为宽的矩形方框的截面积
然后分类讨论,一定是把方框放在中间偏左位置是最优解
code
#include<bits/stdc++.h>
using namespace std;
int main()
{
int s[3];
cin>>s[0]>>s[1]>>s[2];
sort(s,s+3);
int a=s[2],b=s[1],c=s[0];
if(c>=a-b) cout<<(c-a+b)/2+a+1;
else cout<<b+c+1;
return 0;
}