목록C,C++ (125)
오답노트
https://programmers.co.kr/learn/courses/30/lessons/12906?language=cpp 코딩테스트 연습 - 같은 숫자는 싫어 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 programmers.co.kr - 문제 파악 주어지는 정수 배열에서 중복을 제거한 배열을 출력하라 - 정답 #include "bits/stdc++.h" using namespace std; vector solution(vector arr) { vector answer; int ntmp = arr[0]; answer.push_back(ntmp)..
https://programmers.co.kr/learn/courses/30/lessons/12910?language=cpp 코딩테스트 연습 - 나누어 떨어지는 숫자 배열 array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하 programmers.co.kr - 문제파악 정수 배열과 나눗셈을 하기위한 정수가 주어지는데 배열의 요소들 중에서 나눗셈을 하기 위한 정수로 나누어지는 수를 오름차순으로 정렬한 배열을 출력하라, 만약 나누어지는 수가 없다면 -1을 요소로 가지는 배열을 출력하라 - 정답 #include "bits/stdc..
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 - 문제파악 주어지는 정수 두개 사이의 정수들의 합을 출력하라 - 정답 #include "bits/stdc++.h" using namespace std; long long solution(int a, int b) { long long answer = 0; long long llmin = min..
https://programmers.co.kr/learn/courses/30/lessons/12915 코딩테스트 연습 - 문자열 내 마음대로 정렬하기 문자열로 구성된 리스트 strings와, 정수 n이 주어졌을 때, 각 문자열의 인덱스 n번째 글자를 기준으로 오름차순 정렬하려 합니다. 예를 들어 strings가 ["sun", "bed", "car"]이고 n이 1이면 각 단어의 인덱 programmers.co.kr - 문제 파악 문자열 배열이 주어지고 정수의 인덱수 n 이 주어진다. 문자열에서 n번째 글자로 정렬하되 같은 글자일 경우 문자열 사전순으로 정렬하라 - 나의 접근 sort 함수를 i번째 요소와 i+1 번째 요소를 비교하여 정렬하는 로직으로 멋대로 생각하고 있었다. (실제로 어떻게 도는지는 공부해..
https://programmers.co.kr/learn/courses/30/lessons/12917 코딩테스트 연습 - 문자열 내림차순으로 배치하기 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 programmers.co.kr - 문제 파악 주어지는 문자열을 내림차순으로 정렬하되 소문자 다음 대문자가 와야한다. - 정답 sort 함수는 기본적인 형태는 sort(a.begin(),a.end()) 이고 오름차순으로 정렬된다. 내림차순으로 정렬하고 싶을땐 sort(a.begin(),a.end(),greater()) 로 사용하면 된다. (sort(a.begin()..
https://programmers.co.kr/learn/courses/30/lessons/12916 코딩테스트 연습 - 문자열 내 p와 y의 개수 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 programmers.co.kr - 문제 파악 문자열 s가 주어지고 그 안에 p 의 개수와 y의 개수가 일치하면 true 그렇지 않으면 false를 출력하라 - 정답 #include #include using namespace std; bool solution(string s) { bool answer = true; int..
https://programmers.co.kr/learn/courses/30/lessons/12918?language=cpp 코딩테스트 연습 - 문자열 다루기 기본 문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 제한 사항 s는 길이 1 programmers.co.kr - 문제 파악 문자열 s가 주어지고 문자열의 길이가 4 또는 6 이고, 문자열이 모두 숫자인 경우를 true 이외에는 false를 출력하라 - 정답 #include "bits/stdc++.h" using namespace std; bool solution(string s) { bool..
https://programmers.co.kr/learn/courses/30/lessons/12921 코딩테스트 연습 - 소수 찾기 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다.) 제한 조건 n은 2이상 programmers.co.kr - 문제 파악 n 이 주어지고 1부터 n 까지 수중에서 소수의 숫자를 출력하라 - 정답 #include #include #include "bits/stdc++.h" using namespace std; int arr[1000005]; int solution(int n) { int answer = 0; for(int i = 2 ; i
https://www.acmicpc.net/problem/16967 16967번: 배열 복원하기 크기가 H × W인 배열 A와 두 정수 X와 Y가 있을 때, 크기가 (H + X) × (W + Y)인 배열 B는 배열 A와 배열 A를 아래로 X칸, 오른쪽으로 Y칸 이동시킨 배열을 겹쳐 만들 수 있다. 수가 겹쳐지면 수가 합쳐 www.acmicpc.net - 문제 파악 배열 A의 크기 H와 W 그리고 배열 A 와 배열 A를 오른쪽으로 X 칸, 아래로 Y 칸 움직인 배열 B 합친 H+X x W+Y 배열C를 입력 받는데 입력 받은 배열로 부터 배열 A를 출력하라 - 정답 C[i][j]에서 i 가 0이고 j 가 0부터 w-1 까지는 배열 A와 같다. 그러므로 i가 1일때 부터 A[i][j] = C[i][j] - A..
https://www.acmicpc.net/problem/16931 16931번: 겉넓이 구하기 크기가 N×M인 종이가 있고, 종이는 1×1크기의 칸으로 나누어져 있다. 이 종이의 각 칸 위에 1×1×1 크기의 정육면체를 놓아 3차원 도형을 만들었다. 종이의 각 칸에 놓인 정육면체의 개수가 주어 www.acmicpc.net - 문제 파악 NxM 의 배열이 주어지고 각 배열에는 10 미만의 자연수와 0이 주어진다. 각 숫자는 정육면체가 쌓인 개수를 의미하는데 이때 겉넓이를 출력하라 - 정답 #include "bits/stdc++.h" using namespace std; int arr[102][102]; unsigned long long ans; int main() { int n, m; cin >> n >..