프로그래밍181 [백준] 10162번 문제풀이 문제 : www.acmicpc.net/problem/10162 알고리즘 : 1. T의 1의자리가 0이 아니라면, -1을 출력함. 2. T/300이 1보다 크면, T = T - ((T/300) * 300) 을 하고, 5분 Count를 T/300개 더함. 3. T/60이 1보다 크면, T = T - ((T/60) * 60) 을 하고, 1분 Count를 T/60개 더함. 4. T/10이 1보다 크면, T = T - ((T/10) * 10) 을 하고, 10초 Count를 T/10개 더함. 소스코드 : #define _CRT_SECURE_NO_WARNINGS #include int main(void) { int T; scanf("%d", &T); int five = 0; int one = 0; int ten = .. 2021. 4. 7. [백준] 1946번 문제풀이 문제 : www.acmicpc.net/problem/1946 1946번: 신입 사원 첫째 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 20)가 주어진다. 각 테스트 케이스의 첫째 줄에 지원자의 숫자 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개 줄에는 각각의 지원자의 서류심사 성 www.acmicpc.net 알고리즘 : 1. 왼쪽 기준으로 구조체를 Sorting. 2. 오른쪽에서 1이 나올 때 까지, 왼쪽[0]의 오른쪽 보다 작으면 count++ 3. count 출력 이렇게 하면 실패한다. 그 이유는 2번에서 왼쪽[0]의 오른쪽이 고정된게 아니고, 왼쪽[0]의 오른쪽보다 더 작은게 나오면 갱신을 시켜줘야한다. 그래야 문제에서 요구하는 조건에 맞을 수 있다. 소스코드1(틀린거) : #d.. 2021. 4. 7. [백준] 2217번 문제풀이 문제 : www.acmicpc.net/problem/2217 알고리즘 : 1. N개를 입력 받음. 2. Merge Sort로 정렬 (오름차순) 3. 정렬된 값 x index의 MAX를 구함. 4. Max출력 Merge Sort 구현 후, Over Flow가 발생하여서 원인을 분석해보니, merge 함수 내부에서 100,000개의 배열을 선언하다 보니 그런 것 같았다. 그래서 내부 temp배열을 전역 변수로 선언하니, 문제없이 동작하였다. 확실히 빠르긴 하지만, 저장공간이 필요하다는 단점이 있다. 첫 번째 코드는, MAX를 Merge Sort를 이용해서 구하는 것이고, 두 번째 코드는, MAX를 for문을 이용해서 구하는 것이다. 첫 번째 코드는 Merge Sort를 이용하지만, for문으로 배열에 넣어주.. 2021. 4. 7. [백준] 1541번 문제풀이 문제 : www.acmicpc.net/problem/1541 1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 www.acmicpc.net 알고리즘 : flag를 이용해서, -가 나오면 다음 연산은 sum을 -시키면 됨. 기존에 짰던 코드이다. 보기 복잡하고 코드 재사용도 많다. 일단 풀고보자 라는 느낌으로 코딩을 하였다. 근데 잘했던 점은, 성급하게 제출하지 않고 테스트케이스를 여러개 만들어서 테스트 해보고, 디버깅 후에 제출하였다. 짞짞 실력이 늘고있는것 같다. #define _CRT_SECURE_NO_WARNINGS #inclu.. 2021. 4. 6. [C언어] 팩토리얼을 반환하는 함수 만들기 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 #define _CRT_SECURE_NO_WARNINGS #include int factorial(int n); int main(void) { int n; scanf("%d", &n); printf("%d ", factorial(n)); return 0; } int factorial(int n) { if (n == 1) { return 1; } return n * factorial(n - 1); } cs 설명이 필요 없을 정도로 간단한 코드이다. n은 1까지 재귀적으로 호출 된 후, n*n-1 을 하면서 return 된다. 2021. 4. 6. [백준] 13305번 문제풀이 문제 : www.acmicpc.net/problem/13305 알고리즘 : 1. Min보다 작은 값이 나오면, 갱신하면서 km와 cost를 곱함. 2. 만약 Min과 같은 값이 나오면, 나머지 남은 거리과 min을 곱함. 3. 이 모든 곱의 합을 출력. 너무너무 간단한 문제이다. 엄청 간단하게 풀 것으로 예상했고, 처음에는 1번을 생각하지 못하고, 2번만 생각해서 코딩을 하였는데, 제출 해보니 Fail이 나왔다. 그래서 TestCase를 다시 세심히 분석해보니, 1번 부분을 놓쳐서 추가를 하였다. 처음부터 1,2번을 생각을 했어야 했다. 알고리즘이 만들어 졌다고 성급하게 코딩을 해서는 안되는것 같다. 코드 : #define _CRT_SECURE_NO_WARNINGS #define MAX 100000 #i.. 2021. 4. 6. 이전 1 ··· 10 11 12 13 14 15 16 ··· 31 다음