HSG THPT Thanh Hóa 2020 - Chia quà

View as PDF

Submit solution


Points: 0.05 (partial)
Time limit: 1.0s
Memory limit: 256M
Input: CAU1.INP
Output: CAU1.OUT

Author:
Problem type
Allowed languages
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Trường THPT A chia quà tết cho các học sinh thuộc diện chính sách dịp cuối năm 2020, có ~X~ chiếc áo và ~Y~ hộp bánh. Một phương án chia quà của nhà trường là chọn ra ~N~ học sinh được nhận quà sao cho có thể chia hết ~X~ chiếc áo và ~Y~ hộp bánh, đồng thời mỗi học sinh sẽ nhận được số lượng chiếc áo bằng nhau và số lượng hộp bánh cũng bằng nhau.

Yêu cầu: Tìm tất cả các phương án chia quà thoả mãn điều kiện nêu trên. Giả sử rằng số học sinh thuộc diện chính sách của nhà trường là đủ nhiều để có thể thực hiện được tất cả các phương án chia quà.

Input

Đọc từ tệp CAU1.INP – gồm ~2~ số nguyên dương ~X, Y~ (~X, Y \le 10^9~).

Output

Ghi ra tệp CAU1.OUT một số nguyên là số phương án chia quà tìm được.

Scoring

Sample Input 1

6 18

Sample Output 1

4

Sample Input 2

12 8

Sample Output 2

3

Comments

Please read the guidelines before commenting.



  • 0
    bechovang  commented on Feb. 18, 2024, 6:09 p.m.

    em xin để gợi ý cho ai cần ạ

    70/100 test. duyệt từ i --> max(a,b). nếu cả a và b đều chia hết cho i thì tăng biến đếm lên.

    90/100 test. a=max(a,b). b=min(a,b). duyệt từ i --> a. nếu a chia hết cho i. thì có i và a/i là 2 ước của a. lưu các ước của a vào 1 mảng. duyệt mảng ước của a. nếu b chia hết cho ước của a thì tăng biến đếm lên.

    100/100 test. i và a/i sẽ trùng nhau nếu a là số chính phương. VD: 25 = 5*5. => nếu a/i bằng i thì ko cập nhật a/i vào mảng các ước của a.


  • 0
    nhl08contact  commented on Feb. 17, 2024, 4:42 a.m.

    ủa sao code đúng rồi mà WA hết thế nhỉ:))


    • 0
      bechovang  commented on Feb. 18, 2024, 6:12 p.m.

      có freopen("CAU1.INP","r",stdin); freopen("CAU1.OUT","w",stdout); chưa ông


  • -4
    mai_mai_1_tink_iu  commented on Feb. 5, 2024, 1:24 p.m.

    Cách giải:

    Tạo 1 map lưu trữ số lần xuất hiện các ước của 2 số X, Y.

    Quét hết map, nếu m[i] == 2 thì tăng kết quả lên 1.


    • 0
      y  commented on Feb. 5, 2024, 5:05 p.m.

      bạn tìm các ước của ~gcd(X,Y)~ là được mà