Announcement

Collapse
No announcement yet.

Liệt kê các số nguyên tố từ N -> M

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Liệt kê các số nguyên tố từ N -> M

    Mình xin mở đầu với 1 bài tập đơn giản:
    Hãy tìm tất cả các số nguyên tố trong đoạn [A,B] .
    Input
    Gồm 2 số nguyên A và B cách nhau bởi 1 dấu cách ( 1 ≤ A ≤ B ≤ 200000 ) .
    Output
    Ghi ra tất cả các số nguyên tố trong khoảng [A,B]. Mỗi số trên 1 dòng .
    Ví dụ

    Input:
    1 10

    Output:
    2
    3
    5
    7

    Giới hạn thời gian: 1s
    Mời các bạn nhé do lot nu.
    Last edited by 08520001; 18-04-2015, 23:20.

  • #2
    bool nguyento(int t)
    {
    for(int i=2; i<t; i++)
    if(t%i==0) return false;
    return true;
    }
    for(int i=a; i<=b; i++)
    if(nguyento(i)) cout<<i<<endl;
    Last edited by 10520355; 25-10-2011, 13:48.
    University of Information Technology
    Cao Văn Nhàn _ CE10520355
    SĐT: 0188 403 4943

    Email: caovannhan2002@gmail.com

    Comment


    • #3
      anh An ơi. em hâm mộ anh lắm. Hi. trùng hợp là hai anh em mình còn trùng họ nữa. keke
      University of Information Technology
      Cao Văn Nhàn _ CE10520355
      SĐT: 0188 403 4943

      Email: caovannhan2002@gmail.com

      Comment


      • #4
        hi. Trùng hợp nhỉ. Hix. Sao hok ai làm được bài này vậy nhỉ? Buồn thiệt do lot nam.
        Last edited by 08520001; 18-04-2015, 23:20.

        Comment


        • #5
          Code:
          public static void getNumbers(int lowerRange , int upper){
          		int upperRange = upper +1;
          		boolean[] sieve = new boolean[upperRange];
          		for(int i = 0 ; i < upperRange ; i++){
          			sieve[i] = true;	
          		}	
          		int maxRange;
          		for(int i = 2; i <= upperRange/2 ; i++){
          			maxRange = upperRange / i;
          			if(sieve[i] == true){
          				for (int j = 2 ; j < maxRange ; j++){
          					sieve[j*i] = false;
          				}
          			}
          		}
          		for(int i = lowerRange; i <  upperRange; i++){
          			if(sieve[i] == true){
          				System.out.print( i + "   ");
          			}
          		}
          		
          		
          	}
          Vẫn còn dính con số cuối chưa set false được , tối về sửa , giờ đi thi sinh viên khỏe :-)
          Amat Victoria Curam.

          ------
          Ping me at me@toan.mobi

          Comment


          • #6
            Chỉ có cách sàng là nhanh nhất hay sao?
            :happy:SỐNG TRONG MÁI NHÀ UIT, BẠN HÃY NHỚ :happy:
            1. Chấp hành pháp luật, tuân thủ nội quy; 2. Tích cực học tập, chủ động nghiên cứu
            3. Đi học đúng giờ, trang phục lịch sự; 4. Nhớ xếp hàng và đừng chen lấn
            5. Sống có trách nhiệm và biết sẻ chia; 6. Giữ gìn tài sản chung như tài sản của chính bạn
            7. Sử dụng tài sản, thời gian hiệu quả; 8. Khiêm tốn, lễ phép, hòa nhã, thân thiện
            9. Không xả rác để không nhặt rác; 10. Văn minh, lịch sự dù trên lớp học, diễn đàn hay mạng xã hội

            Comment


            • #7
              Anh An cho thêm cái yêu cầu : thời gian chạy - 1s đi ^_^
              Thầy Toàn ơi gợi ý lộ liễu quá thầy :-ss
              Last edited by 09520019; 25-10-2011, 18:12.
              Khoảng cách giữa bạn và ước mơ của bạn là bao xa ?

              Comment


              • #8
                Originally posted by 09520019 View Post
                Anh An cho thêm cái yêu cầu : thời gian chạy - 1s đi ^_^
                Thầy Toàn ơi gợi ý lộ liễu quá thầy :-ss
                Đúng cái mình thắc mắc , thường thì các bài toán có đưa ra giới hạn chẳng hạn như t <= 1s , memory <=16MB chẳng hạn , nếu là giới hạn về bộ nhớ thì
                có thể hiểu , nhưng giới hạn về thời gian thì phụ thuộc vào mẫu N đưa vào cơ mà , hay là giới hạn của t này là áp dụng cho trường hợp xấu nhất , chẳng hạn
                với bài toán trên là khi tìm trong khoảng ( 1 --> 200000). :-s
                Amat Victoria Curam.

                ------
                Ping me at me@toan.mobi

                Comment


                • #9
                  bài này 1s đc mà, với lại cách anh Toàn post là cỏ vẻ < 1s rồi đấy... (mặc dù chưa tối ưu nhất có thể)
                  Khoảng cách giữa bạn và ước mơ của bạn là bao xa ?

                  Comment


                  • #10
                    Originally posted by 08520604 View Post
                    Đúng cái mình thắc mắc , thường thì các bài toán có đưa ra giới hạn chẳng hạn như t <= 1s , memory <=16MB chẳng hạn , nếu là giới hạn về bộ nhớ thì
                    có thể hiểu , nhưng giới hạn về thời gian thì phụ thuộc vào mẫu N đưa vào cơ mà , hay là giới hạn của t này là áp dụng cho trường hợp xấu nhất , chẳng hạn
                    với bài toán trên là khi tìm trong khoảng ( 1 --> 200000). :-s
                    Cách giải của chú thì N và M có là 1->20000 hay là 199999 -> 200000 thời gian nó cũng như nhau thôi mà . Nhưng mà cũng < 1s rồi, 200000 nhỏ quá, nếu chạy thực tế nó không được thì đổi qua C++ đi, đừng có chơi C# =))

                    Comment


                    • #11
                      Originally posted by 09520019 View Post
                      bài này 1s đc mà, với lại cách anh Toàn post là cỏ vẻ < 1s rồi đấy... (mặc dù chưa tối ưu nhất có thể)
                      Ủa sao biết bé hơn 1s thế Châu :-? anh không hiểu, có cách tính nhẩm nào à chỉ anh với :-)
                      Amat Victoria Curam.

                      ------
                      Ping me at me@toan.mobi

                      Comment


                      • #12
                        Originally posted by 07520004 View Post
                        Cách giải của chú thì N và M có là 1->20000 hay là 199999 -> 200000 thời gian nó cũng như nhau thôi mà . Nhưng mà cũng < 1s rồi, 200000 nhỏ quá, nếu chạy thực tế nó không được thì đổi qua C++ đi, đừng có chơi C# =))
                        Em ấy nó bằng java đó ạ , đâu phải C# đâu anh
                        Amat Victoria Curam.

                        ------
                        Ping me at me@toan.mobi

                        Comment


                        • #13
                          Originally posted by 08520604 View Post
                          Em ấy nó bằng java đó ạ , đâu phải C# đâu anh
                          Ợ ợ, thế thì lâu hơn 1s là cái cẳng

                          Comment


                          • #14
                            Hi. Không hẳn đâu. Với bài này thì dùng sàng Eratosthenes là ok rồi. Hi. Xem như bài này đã giải xong. Chúng ta tạm đóng topic ở đây vậy quan ao nu
                            Last edited by 08520001; 18-04-2015, 23:18.

                            Comment


                            • #15
                              Lót dép ngồi hóng bài tiếp theo :-)
                              Amat Victoria Curam.

                              ------
                              Ping me at me@toan.mobi

                              Comment

                              LHQC

                              Collapse
                              Working...
                              X