首页 > 编程语言 > 详细

C++暴力约分(gcd).

时间:2018-07-03 23:18:25      阅读:219      评论:0      收藏:0      [点我收藏+]

举个例子,洛谷1888题。

题目如下

题目描述

输入一组勾股数a,b,c(a≠b≠c),用分数格式输出其较小锐角的正弦值。(要求约分。)

输入格式:

一行,包含三个数,即勾股数a,b,c(无大小顺序)。

输出格式:

一行,包含一个数,即较小锐角的正弦值

 

输入输出样例

输入样例#1: 复制
3 5 4
输出样例#1: 复制
3/5
解题思路:因为要求为正弦值,所以只要得到勾股数里最小和最大的值在相除约分即可。
代码如下

#include <iostream>
#include <algorithm> //头文件不用说。
using namespace std;
int gcd(int a,int b)
{
     return !b?a:gcd(b,a%b);//本题最为核心的地方,暴力约分
}
int main()
{
    int a[3],i;
    cin>>a[0]>>a[1]>>a[2];
    sort(a,a+3);//sort排序(从小到达)注意sort只能排数组。
    cout<<a[0]/gcd(a[0],a[2])<<‘/‘<<a[2]/gcd(a[0],a[2]);//约分格式并输出。
    return 0;
}

蒟蒻的第一次博客,还请大佬请教。 

 

C++暴力约分(gcd).

原文:https://www.cnblogs.com/2050792294-qq/p/9260822.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!