lys312510   4년 전

은 없죠..?

에라토스테네스 체를 구현하려고하는데

입력범위가 10^12라서 bool로 할당을 하려는데 안되네여..

방법 자체가 잘못됬나요

djm03178   4년 전

네, 그렇게 풀면 안 되는 문제입니다.

설령 할당이 가능하다고 하더라도, 에라토스테네스의 체를 10^12개에 대해 시간 안에 돌릴 수는 없습니다.

lys312510   4년 전

에라토스테네, 큐 안쓰고 그냥 소인수분해하는 식으로했는데

시간 초과가 나서요

더 시간을 줄일 방법이 없나요?

lys312510   4년 전

살짝 정정하자면 없는건 아니겠죠 있으니까 시간초과가 나겠지만..

sait2000   4년 전

오일러 토션트 계산하는 문제 아닌가요? 소인수 분해하면 풀 수 있는데 제곱근까지만 루프를 돌면 됩니다.

djm03178   4년 전

오일러 토션트라는 걸 처음 알게 됐네요. 찾아보니 포함 배제로 증명이 되는데 그보다 훨씬 간단한 식으로 풀 수 있군요.

lys312510   4년 전

제가 풀려고했던 방식이 오일러 토션튼데..

큰 소수일경우에 반복횟수가 O(N)이라 이 처리가 안되네용 ㅠ

djm03178   4년 전

sait님이 말씀하셨던 것처럼 루프는 제곱근까지만 돌면 됩니다. sqrt(N)보다 큰 수로는 나누어볼 필요가 없기 때문입니다.

댓글을 작성하려면 로그인해야 합니다.