본문 바로가기

코테58

[C/C++] 나동빈 위에서 아래로, 정렬 문제 첫째줄에 수열에 속한 수의 갯수 N이 주어지며 둘째줄부터 N+1번째 줄까지 수가 주어진다. 이 수를 내림차순으로 정렬하는 프로그램을 만드시오 코드 #include #include #include using namespace std; int main() { int N, temp; vector arr; cin >> N; for (int i = 0; i > temp; arr.push_back(temp); } reverse(arr.begin(), arr.end()); for (int i = 0; i < N; i++) cout 2023. 3. 1.
[C/C++] 정렬 1. 선택정렬 (1) 선택정렬이란 : 전체의 데이터를 한번씩 확인하며 그 데이터를 적절한 위치로 이동시키는 것을 의미한다. (2) 오름차순으로 정렬하는 경우 : N개의 데이터가 입력될 때 n번째로 작은 데이터를 n번째 위치로 옮기는 과정을 정렬이 완료될 때까지 반복한다. 한 데이터를 옮길 때마다 나머지 N-n-1개의 데이터와 비교하게 된다. (3) 시간복잡도 : N개의 데이터에 대해 실행되는데 그 연산 횟수가 N+(N-1)+(N-2)+...+2이므로 N(N+1)=N²+N이다. 따라서 시간복잡도는 O(N²)이다. #include using namespace std; int main() { int arr[10] = { 7,5,2,4,1,3,6,9,0,8 }; for (int i = 0; i < 10; i++.. 2023. 3. 1.
[C/C++] 프로그래머스스쿨 외벽 점검, 구현 #include using namespace std; int solution(int n, vector weak, vector dist) { // 길이를 2배로 늘려서 '원형'을 일자 형태로 변경 int length = weak.size(); for (int i = 0; i < length; i++) { weak.push_back(weak[i] + n); } // 투입할 친구 수의 최솟값을 찾아야 하므로 len(dist) + 1로 초기화 int answer = dist.size() + 1; // 0부터 length - 1까지의 위치를 각각 시작점으로 설정 for (int start = 0; start < length; start++) { // 친구를 나열하는 모든 경우 각각에 대하여 확인 do { int .. 2023. 2. 26.
[C/C++] 백준 치킨 배달, 구현 문제 15686번: 치킨 배달 (acmicpc.net) 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net 코드 #include using namespace std; int n, m; int arr[50][50]; vector chicken; vector house; // 치킨 거리의 합을 계산하는 함수 int getSum(vector candidates) { int result = 0; // 모든 집에 대하여 for (int i = 0; i < house.size(); i++) { int h.. 2023. 2. 26.
[C/C++] 프로그래머스 스쿨 기둥과 보, 구현 #include #include #include using namespace std; bool possible(vector answer) { for (int i = 0; i < answer.size(); i++) { int x = answer[i][0]; int y = answer[i][1]; int stuff = answer[i][2]; if (stuff == 0) { //기둥 설치시 bool check = false; if (y == 0) check = true; for (int j = 0; j < answer.size(); j++) { if (x - 1 == answer[j][0] && y == answer[j][1] && 1 == answer[j][2]) check = true; if (x == .. 2023. 2. 26.
[C/C++] 프로그래머스스쿨 자물쇠와 열쇠, 구현 문제 코딩테스트 연습 - 자물쇠와 열쇠 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 #include #include using namespace std; //키 회전 vector rotation(vector key) { int n = key.size();//행 길이 int m = key[0].size();//열 길이 vector result(n, vector(m));//열이 m, 행이 n인 2차원 벡터 for (int i = 0; i < n; i++){ for (int j = 0; j < m.. 2023. 2. 26.