TLE문제

sleepzzz214 Reply 4 years 30 weeks ago
최소공배수를 구할 때는 TLE가 안뜨는 것 같습니다. 나머지를 구할 때, 1부터 계산해서 TLE가 뜨는 것 같은데요. 1부터 끝까지 구하는 방법말고 또 다른 방법이 대체 무엇인지 모르겠습니다..
withcs2 Reply 4 years 30 weeks ago
1부터 끝까지 구할 때 하나하나 검사할 필요가 없습니다. 2로 나눈 나머지가 1이라면 4로 나눈 나머지는 무조건 1, 3중 하나이기 때문에 4로 나눈 나머지가 0, 2인 경우는 검사할 필요가 없습니다 힌트를 드리자면 for(int i=0;i<=100;i++){ if(i%2==0)printf("%d\n",i); } for(int i=0;i<=100;i+=2){ printf("%d\n",i); } 위의 두 코드는 0부터 100까지 수 중 짝수만 출력하는 코드입니다. 결과는 똑같지만 위쪽 코드보다는 아래쪽 코드가 훨씬 빠릅니다.