coding_test

coding_test/BAEKJOON

백준 2581번 C언어 풀이

https://www.acmicpc.net/problem/2581 2581번: 소수 M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다. 단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다. www.acmicpc.net 범위 내의 소수들의 합과, 그 소수들중 최솟값을 출력하는 문제. 역시 에라토스테네스의 체 가져다가 복붙하니 끝났다. 단, M=1, N=2일때를 주의해야 한다. #include #define MAX_SIZE 10001 int main () { /* 에라토스테네스의 체 */ int seive[MAX_SIZE] = {0,}; // 0부터 시작 for (int i = 2; i < MAX_SIZE; i++) { se..

coding_test/BAEKJOON

백준 10757번 Python 풀이

https://www.acmicpc.net/problem/10757 10757번: 큰 수 A+B 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 범위가 엄청나게 큰 수의 합을 출력하는 문제. 내부적으로 엄청 큰 숫자를 자동으로 처리해주는 파이썬이지만, 솔직히 C로 풀 자신이 없어서 일단은 python으로 풀었다. 근데 이거 C로는 어떻게 풀지...... a, b = map(int, input().split()) print(a+b)

coding_test/BAEKJOON

백준 3009번 C언어 풀이

https://www.acmicpc.net/problem/3009 3009번: 네 번째 점 세 점이 주어졌을 때, 축에 평행한 직사각형을 만들기 위해서 필요한 네 번째 점을 찾는 프로그램을 작성하시오. www.acmicpc.net 3개의 점이 주어졌을 때, 수평, 수직축에 평행한 직사각형을 만들기 위한 4번째 점을 찾는 프로그램. 축에 평행하지 않은 경우를 고려하게 했다면 문제가 더 어려워졌을지도 모른다. 그냥 단순히 x축, y축의 값의 종류가 2개씩 나오면 되므로 1개만 나온 값을 찾아준다. #include int main () { int arr[6];/* x1, y1, x2, y2, x3, y3 */ int x, y; for (int i = 0; i < 6; i++) { scanf("%d", &arr..

coding_test/programmers

lv1 / 두 정수 사이의 합 / C언어 풀이

https://programmers.co.kr/learn/courses/30/lessons/12912 코딩테스트 연습 - 두 정수 사이의 합 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b가 같은 경우 programmers.co.kr 두 정수a, b를 입력받아 a와 b사이의 모든 정수의 합을 return하는 문제. a와 b도 포함되어야 한다. #include #include #include long long solution(int a, int b) { long long answer = 0; if (a > b) { int t..

coding_test/BAEKJOON

백준 2869번 C언어 풀이

https://www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) www.acmicpc.net 낮에 a만큼 올라가고 밤에 b만큼 미끄러지는 달팽이가 높이 v만큼의 막대를 며칠만에 올라가는지에 관한 문제. 시간제한이 꽤 짧아 당황했다. 처음에는 그냥 반복문으로 풀려고 했지만, 시간제한에 걸려 결국 시간초과로 오답. 그래서 어떻게 하지 하다가 관계식을 도출해서 풀어버렸다. 올라가는데 n일이 걸린다고 하자. 그렇다면 달팽이는 a만큼 n번 올라가고 b만큼 n-1번 미끄러질 것이다. 이 식을 정리하면 다음과 같이 정리된다. 이때 (v-b)/(a-b)가 나누..

coding_test/BAEKJOON

백준 1193번 C언어 풀이

https://www.acmicpc.net/problem/1193 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net 규칙성을 찾는데 조금 애먹었다. 군수열에 관한 문제였다. 1/1 1/2 1/3 1/4 1/5 … 2/1 2/2 2/3 2/4 … … 3/1 3/2 3/3 … … … 4/1 4/2 … … … … 5/1 … … … … … … … … … … … 1/1 → 1/2 → 2/1 → 3/1 → 2/2 → …순서인데 우상단→좌하단방향으로 잘라보면(위의 표에서) 1/1 // 1/2, 2/1 // 3/1, 2/2, 1/3 // 1/4, 2/3, 3/2, 4/1 // ...의 수열을 얻을 수 있다. //를 기준으로 1/1부터 1군이라고 하자. n군..

coding_test/BAEKJOON

백준 4948번 C언어 풀이

참 오랜만에 백준을 푼 것 같다. https://www.acmicpc.net/problem/4948 4948번: 베르트랑 공준 베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다. 이 명제는 조제프 베르트랑이 1845년에 추측했고, 파프누티 체비쇼 www.acmicpc.net 베르트랑 공준에 관한 문제. 임의의 자연수 n에 대해 n ~ 2n사이에 소수는 적어도 하나가 존재한다는 이론이다. 현재 완전히 증명되어있는 이론. 소수문제를 풀면서 에라토스테네스의 체를 한번 구현해 놓으니 거의 모든 소수문제가 복붙수준으로 풀리고 있다. 이 문제도 에라토스테네스의 체를 한번 만들어 놓은 후에, 범위에 따라 개수를 세면 되는 문제. #incl..

coding_test/programmers

lv1. 문자열을 정수로 바꾸기

https://programmers.co.kr/learn/courses/30/lessons/12925 코딩테스트 연습 - 문자열을 정수로 바꾸기 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 제한 조건 s의 길이는 1 이상 5이하입니다. s의 맨앞에는 부호(+, -)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니 programmers.co.kr 문자열로 입력된 정수를 정수형으로 바꾸는 문제. 어떻게 풀까 고민하다가 조언을 받고 stdlib헤더의 atoi함수에 관해 알게 되었다. atoi는 문자열을 정수로 바꿔주는 함수이다. #include #include #include #include int solution(const char* s) { int answer =..

CodeJin
'coding_test' 카테고리의 글 목록 (23 Page)