Primality test algorithm

и задачки для интервью.
User avatar
Tempura
Уже с Приветом
Posts: 409
Joined: 05 Dec 2007 17:07
Location: NYC

Primality test algorithm

Post by Tempura »

Какой является самым популярным если можно так выразиться по своей несложности.
Собственно вопрос :|
User avatar
SVK
Уже с Приветом
Posts: 8400
Joined: 23 Jul 2003 03:53
Location: SPb - KW - NY - CT - MD

Post by SVK »

Хм...

Конечно: "Напечатать 'Hello, World!'" :mrgreen: :umnik1:
LG - Life's good.
But good life is much better.
vaduz
Уже с Приветом
Posts: 27652
Joined: 15 Jul 2002 17:05
Location: MD

Post by vaduz »

http://en.wikipedia.org/wiki/Primality_test

Мне лично во многих случаях хватало либо битовой строчки, либо таблицы.
User avatar
Tempura
Уже с Приветом
Posts: 409
Joined: 05 Dec 2007 17:07
Location: NYC

Post by Tempura »

википидию я видела. Спасибо. Там нескольно алгоритмов. Меня инересует наиболее простой из них:-)

А про какую вы таблицу говорите? а если число 30 значное?
vaduz
Уже с Приветом
Posts: 27652
Joined: 15 Jul 2002 17:05
Location: MD

Post by vaduz »

Tempura wrote:А про какую вы таблицу говорите? а если число 30 значное?


Ну вы бы сперва область интересов описали.
Нафига вам лично это нужно?
User avatar
venco
Уже с Приветом
Posts: 2001
Joined: 10 Nov 2004 00:34
Location: MD

Post by venco »

Самый простой не обязательно подойдёт вам.
Чтобы выбрать, надо знать какой диапазон чисел, насколько надёжно надо знать что число простое, и т.д.

Как вариант простого решения - воспользоваться готовой библиотекой:

Code: Select all

  if ( new java.math.BigInteger("12345678901").isProbablePrime(32) )
    System.out.println("prime, probably");
PavelM
Уже с Приветом
Posts: 13316
Joined: 13 Jun 1999 09:01
Location: Yekaterinburg -> Montreal

Re: Primality test algorithm

Post by PavelM »

Tempura wrote:Какой является самым популярным если можно так выразиться по своей несложности.
Собственно вопрос :|


Rabin-Miller test

но лучше послушайте venco и возьмите что-то готовое
OtecFedor
Уже с Приветом
Posts: 8361
Joined: 17 Oct 2001 09:01
Location: Уездный город N

Post by OtecFedor »

Вопрос на interview "can you prove that if P is a prime number P^2-1 will divide by 24 without a residue?" Я понимаю if p is prime than it can be peresnted as 2n+-1 and 3n+-1 и наверное можно показать что P^2-1 делится на 24. Кто-то знает вывод?
User avatar
venco
Уже с Приветом
Posts: 2001
Joined: 10 Nov 2004 00:34
Location: MD

Post by venco »

OtecFedor wrote:Вопрос на interview "can you prove that if P is a prime number P^2-1 will divide by 24 without a residue?" Я понимаю if p is prime than it can be peresnted as 2n+-1 and 3n+-1 и наверное можно показать что P^2-1 делится на 24. Кто-то знает вывод?

Это неверно для P=2,3.
А для P>3 вы уже почти доказали, там всё просто.
User avatar
mikeG
Уже с Приветом
Posts: 8470
Joined: 02 Aug 2003 01:32
Location: SPb->SFBA

Post by mikeG »

OtecFedor wrote:Вопрос на interview "can you prove that if P is a prime number P^2-1 will divide by 24 without a residue?" Я понимаю if p is prime than it can be peresnted as 2n+-1 and 3n+-1 и наверное можно показать что P^2-1 делится на 24. Кто-то знает вывод?


Это верно не для всех простых чисел, а для всех, кроме 2 и 3.

P^2 - 1 = (P-1)(P+1).
Одно из них делится на два, другое - на четыре. И одно из них делится на три => произведение делится на 24.
OtecFedor
Уже с Приветом
Posts: 8361
Joined: 17 Oct 2001 09:01
Location: Уездный город N

Post by OtecFedor »

mikeG wrote:P^2 - 1 = (P-1)(P+1).
Одно из них делится на два, другое - на четыре. И одно из них делится на три => произведение делится на 24.

Спасибо, при таком разложении деиствительно просто и очевидно, у меня в условиях стесса как-то слишком запутано получилось.

Return to “Головоломки”