THPTTD_38 - Hình chữ nhật _TD

Xem dạng PDF

Gửi bài giải

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

Tác giả:
Nguồn bài:
HSG
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, JavaScript, Kotlin, Pascal, Perl, PHP, Python, Ruby, Rust, Scratch, Swift

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.



  • 1
    hohoanghai5042011  đã bình luận lúc 22, Tháng 3, 2024, 8:08 sửa 2

    include <iostream>

    include <fstream>

    include <cmath>

    using namespace std;

    int main() { ifstream infile("RECT.INP"); ofstream outfile("RECT.OUT");

    int n;
    infile >> n;
    
    int min_diff = n - 1; // Khởi tạo giá trị nhỏ nhất cho b - a là n - 1
    int a_result = 1, b_result = n;
    
    // Duyệt qua các ước số từ 1 đến căn bậc hai của n
    for (int a = 1; a <= sqrt(n); ++a) {
        if (n % a == 0) {
            int b = n / a;
            if (b - a < min_diff) {
                min_diff = b - a;
                a_result = a;
                b_result = b;
            }
        }
    }
    
    outfile << a_result << " " << b_result << endl;
    
    infile.close();
    outfile.close();
    
    return 0;
    

    }