coding_test

coding_test/BAEKJOON

백준 1181번 C, C++ 풀이

https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 숫자를 정렬하던 기존의 문제와는 달리, 이번에는 문자열을 정렬하는 문제. 비교함수를 작성한 후에, 내장함수를 사용해서 정렬한다. C언어로 풀 때, 원래는 문자열 배열을 사용해서 문제를 해결하려고 했는데, 자꾸 segmentation fault가 떠서, 해결하려다가 도저히 답이 안나와서 그냥 구조체를 만든 후에 해결했다. // C #include #include #include // 문자..

coding_test/BAEKJOON

백준 10773번 C++풀이

https://www.acmicpc.net/problem/10773 10773번: 제로 첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경 www.acmicpc.net 0이 들어온 경우 제일 최근의 수를 제거하여 맨 마지막 존재하는 모든 수를 더하는 문제. C++의 vector를 스택처럼 활용하여 0이 들어온 경우 pop해주고 나머지는 push한 후에 다 더하면 된다. 원래라면 C언어로 해보고자 했지만, 솔직히 있는거 가져다 쓰는게 더 좋을거라고 판단해서 C++로 풀었다. #include #include #include usin..

coding_test/BAEKJOON

백준 1009번 C언어 풀이

https://www.acmicpc.net/problem/1009 1009번: 분산처리 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트 케이스에 대해 정수 a와 b가 주어진다. (1 ≤ a < 100, 1 ≤ b < 1,000,000) www.acmicpc.net 입력받은 두 수로 만들어지는 최대값이 10^2000000임을 유의하자. int형이던 long long형이던 이 범위까지 나타낼 수 없으므로 모듈러 계산을 통해 접근하면 된다. 모듈러 연산은 다음을 참고하자 (https://codejin.tistory.com/68) 곱셈 역시 n개의 수에 대해 모듈러 연산 법칙이 확장 가능하므로 a를 곱하는 것이 아닌 a를 10으로 나눈 나머지를 계속 곱해주자. 또한 결과값이..

coding_test/BAEKJOON

백준 10845번 C언어 풀이

https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 큐를 구현하는 문제. 구현해야 하는 사항은 다음과 같다. push X: 정수 X를 큐에 넣는 연산이다. pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. size: 큐에 들어있는 정수의 개수를 출력한다. empty: 큐가 비어있으면 1, 아니면 0을 출력한다. front: 큐의 가장 앞에 있는 정수를 출력한..

coding_test/BAEKJOON

백준 10989번 C언어 풀이

https://www.acmicpc.net/problem/10989 10989번: 수 정렬하기 3 첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다. www.acmicpc.net 정수를 정렬하는 문제. 수 정렬하기2(https://www.acmicpc.net/problem/2751)는 시간을 적게준 대신에 메모리는 넉넉하게 줬다면, 이번에는 시간을 좀 널널하게 주는 대신에 메모리를 확 줄여버린 문제이다. 처음에는 그게 무슨상관이지? 했는데, 메모리를 적게 준데에는 다 이유가 있었던거 같다. 수 정렬하기 2도 퀵소트로 풀려다가 못풀어서 결국 C의 stdlib헤더의 qsort와 C++의 std:..

coding_test/BAEKJOON

백준 10828번 C언어 풀이

https://www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 스택을 구현하는 문제. 자료구조에 관한 공부는 다음에 좀더 심층적으로 하고, 우선은 스택은 LIFO (Last In, First Out)구조라는 것만 알고 넘어가자. 구현해야 하는 함수는 다음과 같다. push X: 정수 X를 스택에 넣는 연산이다. pop: 스택에서 가장 위에 있는 정수를 빼고, 그 수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다. s..

coding_test/programmers

lv1 / 없는 숫자 더하기 / C, C++

https://programmers.co.kr/learn/courses/30/lessons/86051?language=c 코딩테스트 연습 - 없는 숫자 더하기 0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr 0부터 9까지 배열에 없는 수를 더하는 문제. false 10개로 이루어진 배열을 만들고 있는 숫자를 true로 바꾼후에 false인 수를 더한다. #include #include #include // numbers_len은 배열 numbers의 길이입니다. int solution(int num..

coding_test/BAEKJOON

백준 1011번 C언어 풀이

https://www.acmicpc.net/problem/1011 1011번: Fly me to the Alpha Centauri 우현이는 어린 시절, 지구 외의 다른 행성에서도 인류들이 살아갈 수 있는 미래가 오리라 믿었다. 그리고 그가 지구라는 세상에 발을 내려 놓은 지 23년이 지난 지금, 세계 최연소 ASNA 우주 비행 www.acmicpc.net 최소 이동 횟수를 구하는 문제. 어쩔 수 없이 직접 이동 거리를 써보면서 규칙을 찾아야 한다. 맨 마지막 이동거리는 1이어야만 하고 맨 처음 출발 역시 1로 시작해야 한다. 거리가 26일때 까지만 써보자 거리 (y-x) 이동 횟수 1 1 1 2 1 1 2 3 1 1 1 3 4 1 2 1 3 5 1 2 1 1 4 6 1 2 2 1 4 7 1 2 2 1 1..

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