[解题报告]【第23题】给定 a 和 b,代表分数 a / b,求它的最简分数

简介: [解题报告]【第23题】给定 a 和 b,代表分数 a / b,求它的最简分数

目录


零、写在前面


一、主要知识点


1.最简分数


二、课后习题


1979. 找出数组的最大公约数


写在最后


零、写在前面

       这个系列不经常更新,尝试去完善这部分的所有题解吧。


【第23题】给定 a 和 b,代表分数 a / b,求它的最简分数https://blog.csdn.net/WhereIsHeroFrom/article/details/118272863

https://blog.csdn.net/WhereIsHeroFrom/article/details/118272863


一、主要知识点

1.最简分数

有了昨天的最大公约数,求最简分数其实就是求分子分母的最大公约数,然后除掉就好了。


#include <stdio.h>
int gcd(int a, int b) {//辗转除 求最大公约数
    return !b ? a : gcd(b, a % b);   
}
int main() {
    int a, b;
    while(scanf("%d %d", &a, &b) != EOF) {
        int g = gcd(a, b);    
        printf("%d/%d\n", a/g, b/g);    //求最简分数
    } 
    return 0;
}

二、课后习题

1979. 找出数组的最大公约数

1979. 找出数组的最大公约数

https://leetcode-cn.com/problems/find-greatest-common-divisor-of-array/


题目描述


给你一个整数数组 nums ,返回数组中最大数和最小数的 最大公约数 。


两个数的 最大公约数 是能够被两个数整除的最大正整数。


思路


先找到最大最小值,然后求最大公约数就好了。不是,,,这是昨天的题啊-.-


int GCD(int a,int b){//辗转相除
    return b ? GCD(b,a%b) : a;
}
int findGCD(int* nums, int numsSize){
    int max = nums[0], min = nums[0] ;//最大最小
    for(int i = 1; i < numsSize; i++){
        if(max < nums[i])   max = nums[i];
        if(min > nums[i])   min = nums[i];
    }
    return GCD(max,min);
}
相关文章
|
2天前
|
存储 C语言
牛客网刷题总结(1.有序序列判断,2.获得月份天数,3.矩阵相等判定,4.矩阵转换,5.井字棋判断输赢,6.递归进行进制转化)
牛客网刷题总结(1.有序序列判断,2.获得月份天数,3.矩阵相等判定,4.矩阵转换,5.井字棋判断输赢,6.递归进行进制转化)
46 0
|
7月前
【C刷题】矩阵相等判断与序列中删除指定的数字(下)
【C刷题】矩阵相等判断与序列中删除指定的数字(下)
|
2天前
2572. 无平方子集计数(状态压缩dp)
2572. 无平方子集计数(状态压缩dp)
|
2天前
|
机器学习/深度学习 存储 算法
数据结构与算法面试题:给定非负整数 m 和 n,计算不大于 m 的数字中,素数的个数。(提示:算法原理为埃氏筛、线性筛)
数据结构与算法面试题:给定非负整数 m 和 n,计算不大于 m 的数字中,素数的个数。(提示:算法原理为埃氏筛、线性筛)
38 0
|
2天前
|
人工智能 算法 Java
数据结构与算法面试题:给定 n 个非负整数 a1,a2,a3,...,an,每个数代表坐标中的一个点(i, ai),请找出两个点之间的最大距离。(提示:动态规划)
数据结构与算法面试题:给定 n 个非负整数 a1,a2,a3,...,an,每个数代表坐标中的一个点(i, ai),请找出两个点之间的最大距离。(提示:动态规划)
50 1
|
9月前
|
存储 索引
信息学奥赛 如何在整数数组中寻找两数之和等于给定目标值
本文介绍了在整数数组中寻找两个数之和等于给定目标值的问题,提供了两种解法:暴力法和哈希表法。通过比较两种解法的时间复杂度,指出了哈希表法更为高效。
69 0
|
7月前
代码随想录Day22 LeetCode T39 组合总和 T40 组合总和II T131 分割回文串
代码随想录Day22 LeetCode T39 组合总和 T40 组合总和II T131 分割回文串
20 0
|
7月前
|
C语言
【C刷题】矩阵相等判断与序列中删除指定的数字(上)
【C刷题】矩阵相等判断与序列中删除指定的数字(上)
每日一题---输出100个1~6的随机整数,并求出每个数出现的概率
每日一题---输出100个1~6的随机整数,并求出每个数出现的概率
每日一题---输出100个1~6的随机整数,并求出每个数出现的概率
|
存储 算法
【题型总结】找到第n个自定义数 | 丑数系列 + 神奇数字
思路:对于对于任意一个丑数 x,其与任意的质因数(2、3、5)相乘,结果(2x、3x、5x)仍为丑数。因此可以使用优先队列(小根堆)存放丑数x,每次从队列取出最小值x,并将x所对应的2x、3x和5x入队。第n次出队的值即为第n个丑数
211 0
【题型总结】找到第n个自定义数 | 丑数系列 + 神奇数字