전체 글

코딩하는 대학생에서 개발자까지
백준(S2) 1929번: 소수 구하기 (c11,c99)
코드를 보기에 앞서, 이 문제를 처음 보는 사람은 "어 뭐야 쉽네??", "이게 왜 실버2??" 이런 생각을 할 수 있다. 그러나 제출을 해보면 100중 95는 시간초과가 될 것 이다. 그런 사람들은 에라토스테네스의 체를 한번 확인해보고 코딩을 해보자 소수는 1과 자기 자신으로만 나눠지는 수다. 그런 특성을 이용해서 120보다 작은 수의 소수를 구할때는 11까지 숫자들의 배수만 제외해도 구해진다. 왜 11인가? (11^2 > 120)이므로 11까지의 배수다. 필자는 이걸 몰라서 반복문을 이용해 전부 곱했다.... Full code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #include int main() { int a, a1; int result[..
백준(B1) 1145번: 적어도 대부분의 배수 (C언어 c11 c99)
코드를 보기 전에:처음에는 약간 헷갈렸지만, 문제를 천천히 읽어보면서 문제 이해부터 시작한 다음 코딩했다. 10번째 줄의 for(int a=1; ; a++) 이 문장이 가장 핵심인 것 같다. 이 문제의 핵심 포인트는 무한반복문인것 같다. 입력받은 숫자중에 적어도 3개의 문자의 배수를 구해야 한다. 무한 반복문을 잘못 사용하면 값이 안나오고 시간초과가 되므로, 조건문을 이용해서 break해야한다. 밑의 코드에서는 적어도 3개의 숫자로 나눴을때 나머지가 0이면 탈출하도록 했다. *바로 탈출해야 최솟값을 구할수가 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 for (int a=1;; a++) { for (int b = 0; b = 3) { printf("%d\n", a); break..
2021-09-26
시작!
코딩하는_대학생
코딩하는 대학생에서 개발자까지