83 条题解
-
0
ac代码
#include <bits/stdc++.h> using namespace std; int main() { int a,b,num = 0; cin >> a >> b; if (a > b) { num = a - b; } else { num = b - a; } cout << a + b - num - 1; return 0;
逝不逝**
很简单**? 下一题链接:http://oj.hetao101.com/d/training/p/550 -
0
// ∵设第三边为c // ∴|a-b|<c<a+b(三角形两边之和大于第三边两 边之差小于第三边) // ∵a,b,c为正整数 // ∴|a-b|+1<=c<=a+b-1 // ∴c的最大值为a+b-1,最小值为|a-b|+1 if(a>b)// 当a>b时,|a-b|=a-b { cout<<2*b-1;//∴c的个数为最大值-最小值+1 // 即a+b-1-(a-b+1)+1,化简得2b-1 } else// 当b>a时,|a-b|=b-a { cout<<2*a-1;// ∴c的个数为最大值-最小值+1 //即a+b-1-(b-a+1)+1,化简得2a-1 } if(a>b) { cout<<2*b-1; } else { cout<<2*a-1; }
-
0
对于我来说,懒得老是if的,如下
#include <bits/stdc++.h> using namespace std; long long a,b; int main() { cin>>a>>b; long long x=min(a,b); long long y=max(a,b); cout<<x+y-(y-x)-1; }
然后我们发现可以拆括号,就变成这样子
cout<<2*x-1;
哈哈,突然发现y都不需要了
#include <bits/stdc++.h> using namespace std; long long a,b; int main() { cin>>a>>b; long long x=min(a,b); cout<<2*x-1; }
(这应该是最简的代码?)
信息
- ID
- 522
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 7
- 标签
- 递交数
- 18999
- 已通过
- 3895
- 上传者