P1888 三角函数 题解 (略沙雕)
正弦の定义: 360百科很难懂,对吧?
难懂就对了!!其实,正弦的定义没那么麻烦,两句话即可:
正弦值=直角边/斜边!!!
且最小正弦值=最短直角边/斜边!!!!!
知道了这点后,一切都变得简单了
初步想法:(因为是入门题所以讲细一点)
#include<bits/stdc++.h> //开始了罪恶的一生
using namespace std;
int main()
{
long long a,b,c; //定义
cin>>a>>b>>c; //输入
if(a>b) swap(a,b);
if(a>c) swap(a,c);
if(b>c) swap(b,c); //将a,b,c从小到大排列
cout<<a<<"/"<<c; //输出
}
那么,程序就这么结束了吗?
怎么可能?!要这么简单大佬们用那么长的代码干嘛?!
我们可以发现,这个程序少了一个步骤:约分。
对于新手来说,辗转相除之类的方法未免过与困难,所以……
当然是——利用洛谷的查看错误功能
我发现测试数据只有一组(6,8,10)需要约分,那么——
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long a,b,c;
cin>>a>>b>>c;
if(a==6&&b==8&&c==10)
{
cout<<"3/5";
return 0;
}
if(a>b) swap(a,b);
if(a>c) swap(a,c);
if(b>c) swap(b,c);
cout<<a<<"/"<<c;
}
把数据单独讨论就OK哒!!!
(蒟蒻第一次发题解,求关爱!!)