백준(S4) 1934번 최소공배수 (C11,C99)
·
C언어/백준 문제풀이
코드를 보기 전에: 최소공배수 구하는 방법! -> A X B / A,B의 최대공약수 = A,B의 최소공배수 최대 공약수를 구하는 공식이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 int Max(int a, int b) { int result1 = 0; int min = (a
백준(B2) 10870번: 피보나치 수 5 (C11, C99)
·
C언어/백준 문제풀이
코드를 보기 전에: DP와 피보나치 수는 실과 바늘의 존재다. DP를 알면 피보나치 수를 쉽게 풀수있다. Dynamic programming 점화식을 이용해서 한번 풀어보겠다. DP 설명: https://solution-is-here.tistory.com/16?category=979031 (C언어)DP Dynamic Programming 설명 다이나믹 프로그래밍은 취업을 할려면 필수로 배워야 하는 함수 같았다. 다이나믹 프로그래밍을 쉽게 말하자면 계산횟수를 줄여주는 함수다. 아직 C언어를 제대로 배우지 못해 코딩을 많이 안 solution-is-here.tistory.com 출처: https://hongku.tistory.com/161 Full code 1 2 3 4 5 6 7 8 9 10 11 12 1..
백준(S4) 11653번: 소인수분해 (c11,c99)
·
C언어/백준 문제풀이
코드를 보기 전에: 소인수분해의 정의: 소인수분해(영어: prime factorization, integer factorization)는 1보다 큰 자연수를 소인수들만의 곱으로 나타내는 것 또는 합성수를 소수의 곱으로 나타내는 방법을 말한다. (출처 위키백과) 쉽게 말하자면 입력받은 숫자를 1보다 큰 소인수들만의 곱으로 표현하는 것이다. Full code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 #include int main() { int num; scanf("%d", &num); for (int a = 2; ; a++) { if (num == 1) /..
백준(B3) 4153번: 직각삼각형 (c11,c99)
·
C언어/백준 문제풀이
코드를 보기전에: C^2(C가 가장 큰 숫자일때) = A^2 + b^@2 이 공식은 매우 유명한 피타고라스 정리다. 공식을 말로 하자면 직각 삼각형의 빗변의 제곱이 두 직각변의 제곱의 합과 같다는 정리이다. 이런 특성을 이용하면 쉽게 풀수 있다. Full code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 #include int main() { int a, b, c; int x, y, max; for (int s = 0; ; s++) { scanf("%d %d %d", &a, &b, &c); if (a == 0 && b == 0 && c == 0) // a,b,c 가 모두 0이면 b..
백준(B3) 3009번: 네 번째 점 (c11,c99)
·
C언어/백준 문제풀이
코드를 보기 전에: C언어를 배우는 사람이면 직사각형에 대해 잘 알것이다. 혹시 모를 모르는사람을 위한 직사각형의 특징 (출처 위키백과) 네 각의 크기가 모두 직각이다. 마주보는 두 변(대변)의 길이가 같다. 마주보는 두 변(대변)이 평행하다. 두 대각선의 길이가 같다. 각 대각선이 서로 합동인 직각삼각형으로 양분한다. 각 대각선이 내각이 분할되는 비율이 일정하다. 각 대각선을 지름으로 하는 원에 내접한다. Full code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 #include int main() { int x1, x2, x3; int y1, y2, y3; scanf("%d %d",..
백준(B3) 1085번: 직사각형에서 탈출 (c11,c99)
·
C언어/백준 문제풀이
코드를 보기전에: 이 문제는 정말 쉽다. 어렵게 생각하면 오히려 틀릴수도 있는 문제다. 생각을 해보면 가장 빨리 탈출하는 방법은 가장 가까운곳으로 나가는 것이다. 사각형의 왼쪽 아래 꼭짓점과 오른쪽 위 꼭짓점을 입력받은뒤, X Y와 비교해서 가장 가까운 변을 찾는다. 1 2 3 4 5 6 7 8 scanf("%d %d %d %d", &x, &y, &w, &h); min = x; // 최솟값을 x로 설정. if (min > w - x) // x보다 w-x가 더 크다면 최솟값 변경 min = w - x; if (min > h - y) min = h - y; if (min > y) min = y; Colored by Color Scripter cs Full code 1 2 3 4 5 6 7 8 9 10 11 ..