Code tìm số nguyên nhỏ nhất chia hết cho 1, 2, ..., n bị sai

Cho minh hoi nen sua code o dau a.

#include <iostream>
using namespace std;
long long GCD (int a, int b) {
    int tmp;
    while(b != 0) {
        tmp = a % b;
        a = b;
        b = tmp;
    }
    return a;
}
long long LCM(int a, int b) 
{
    return (long long )a*b/GCD(a,b);
}

int main () {
    int t;
    int n;
	cin>>t;
    while (t--) {
    	do 
    	{
    		cin>>n;
    		
		}while (n<1||n>10000);
    	long long  result=1;
    	for (int i=2;i<=n;i++) {
    		result=LCM(result,i);
		}
		cout<<result<<endl;
	}
    return 0;
}

merged to the #1 post by noname00

  1. Vấn đề của bạn là gì? Bạn muốn code output như thế nào? Bạn gặp vấn đề gì để người ta có thể sửa chữa và hỗ trợ bạn.
  2. Nhớ dùng Tiếng Việt có dấu để người trả lời có thể giúp bạn được.
  3. Dùng Markdown cho phần code để dễ đọc hơn nhé.
4 Likes

n đến 10000 thì nhân longlong còn ko đc chứ nói gì chia :smiley:

Ngoài cách tính UCLN bằng Euclid thì còn cách dùng phân tích thừa số :slight_smile: giờ chỉ còn tìm số mũ đúng nữa thôi.

\prod_{p\ prime}^{n} p^{??}
6 Likes

Mình cảm ơn góp ý của bạn nhé. Mình nghĩ code của mình bị tràn số. Nhưng mà mình đã sửa code thành long long int rồi. Nó vẫn báo Wrong answer

1 Like

Mình sửa được code rồi nha. Thank m.ng!

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?