PHÂN SỐ NHỎ NHẤT

Xem dạng PDF

Gửi bài giải

Điểm: 100,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 512M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
Python, Scratch

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài


Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 0
    duy_khanh_2k7   đã bình luận lúc 20, Tháng 2, 2025, 20:45

    Nếu phải sắp xếp các số thành các phân số khác nhau rồi tìm một phân số nhỏ nhất có thể, vậy thì thay vào đó phải tìm tử số nhỏ nhất và mẫu số lớn nhất trong các số đó (tử số càng nhỏ hoặc mẫu số càng lớn thì phân số càng nhỏ và ngược lại)

    from math import gcd
    a, b, c = [int(input()) for _ in range(3)]
    tu_so = min(a, b, c)
    mau_so = max(a, b, c)
    uoc_chung = gcd(tu_so, mau_so)
    print(tu_so//uoc_chung + mau_so//uoc_chung)
    

  • 0
    KVMB23A_67   đã bình luận lúc 26, Tháng 9, 2024, 23:32

    code python đây nhé ACE

    def gcd(a, b):
        if b==0: return a
        else: return gcd(b, a%b)
    
    if __name__=='__main__':
        a, b, c=int(input()), int(input()), int(input())
        ts, ms=min(a, b, c), max(a, b, c)
        div=gcd(ts, ms)
        ts//=div; ms//=div
        print(ts+ms)
    

  • 0
    tn   đã bình luận lúc 2, Tháng 7, 2024, 22:53 chỉnh sửa

    code nay se ko chay nhanh tai math la thu vien tu C nhung ma mo ta ro hon ve tt Euclid : def _gcd(f1, f2): if f2: return _gcd(f2, f1 % f2) return f1

    a = int(input()) b = int(input()) c = int(input()) m=min(a,b,c) mx=max(a,b,c) c=_gcd(m,mx) print(m//c+mx//c)


  • 0
    SK23A_32   đã bình luận lúc 29, Tháng 6, 2024, 12:39

    code nè mọi người: import math a=int(input()) b=int(input()) c=int(input()) ts=min(a,b,c) ms=max(a,b,c) k=math.gcd(ts,ms) ts=ts//k ms=ms//k print(ts+ms)


  • 0
    dangkhoi162013   đã bình luận lúc 8, Tháng 6, 2024, 13:23

    tìm số bé nhất và lớn nhất rồi rút gọn rồi cộng là ra


  • 1
    tung123   đã bình luận lúc 7, Tháng 6, 2024, 21:29

    code nè

    from fractions import * a = int(input()) b = int(input()) c = int(input()) num = 0 d = Fraction(a, b) e = Fraction(a, c) f = Fraction(b, c) g = Fraction(b, a) h = Fraction(c, a) k = Fraction(c, b) dd = d.numerator dd2 = d.denominator ee = e.numerator ee2 = e.denominator ff = f.numerator ff2 = f.denominator aa = min(d, e, f, g, h, k) if aa == d or aa == g: num = dd+dd2 elif aa == e or aa == h: num = ee+ee2 elif aa == f or aa == k: num = ff+ff2 print(num)


    • 0
      duy_khanh_2k7   đã bình luận lúc 20, Tháng 2, 2025, 20:46

      Cần gì phải dùng fractions.Fraction rườm rà thế kia

      from math import gcd
      a, b, c = [int(input()) for _ in range(3)]
      tu_so = min(a, b, c)
      mau_so = max(a, b, c)
      uoc_chung = gcd(tu_so, mau_so)
      print(tu_so//uoc_chung + mau_so//uoc_chung)
      

  • 1
    Clermono   đã bình luận lúc 4, Tháng 6, 2024, 16:39 chỉnh sửa

    Hint:

    Dùng module fractions của Python


  • -3
    minhtrunggd2014   đã bình luận lúc 2, Tháng 6, 2024, 9:05

    tử và mẫu có cần giống nhau không


  • 3
    KPKTuan   đã bình luận lúc 21, Tháng 5, 2024, 14:29

    Tìm min và max của 3 số a,b,c


    • 0
      thienthansanga2k13   đã bình luận lúc 2, Tháng 7, 2024, 8:28

      là tìm min max rồi rút gọn, sau đó cộng với nhau hả bạn


    • -1
      doanngocgiahung_2004   đã bình luận lúc 24, Tháng 5, 2024, 20:40

      a = int(input()) b = int(input()) c = int(input()) print(min(a,b,c)) print(max(a,b,c))


  • 5
    Bongu   đã bình luận lúc 6, Tháng 5, 2024, 16:18

    Ai biết cách làm thì chỉ mình với ạ! Cảm ơn mọi người rất nhiều