反正数学方法我是不会
那只能模拟了一只连模拟题解都看不懂的哀怨
我的思路大体如下
1.定义3个变量a,b,c并输入
int a,b,c;
cin>>a>>b>>c;
2.定义一个计数变量,归零;再定义一个最小值的变量,每次找出最小值增加1cm
int cnt=0;
int minv;
3.前方高能代码核心处,使用循环
while(1)
因为懒得算循环几次,直接用死循环,符合要求就break
即可
4.判断是否符合要求,符合要求就break
即可
if(a+b>c && a+c>b && c+b>a){break;}
5.找出最小值minv
minv=min(a,min(b,c));
6.找到最小值对应的数 注意用else
if(minv==a)a++;
else if(minv==b)b++;
else if(minv==c)c++;
7.计数器++
cnt++;
8.最后输出计数器即可
cout<<cnt;
最后,上代码
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a,b,c;
cin>>a>>b>>c;
int cnt=0;
int minv;
while(1)
{
if(a+b>c && a+c>b && c+b>a){break;}
minv=min(a,min(b,c));
if(minv==a)a++;
else if(minv==b)b++;
else if(minv==c)c++;
cnt++;
}
cout<<cnt;
return 0;
}