본문 바로가기
반응형

코딩테스트 | 백준21

[백준 3052 | C++] 나머지_ 1차원배열(이중 for문, set 자료 구조, 중복된 값 제거하기) 백준 3052| C++ 나머지https://www.acmicpc.net/problem/3052 문제두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다.수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오. 예제1,2,3,4,5,6,7,8,9,10이 주어진 경우를 살펴보자-> 이때의 나머지는 1,2,3,4,5,6,7,8,9,10따라서 모두 다른 숫자이므로 10이 출력된다문제 접근•숫자를 입력 받을 배열 생성•입력 받은 숫자를 42로 나눈 나머지를 담을 배열 생성•N과 n+1이 다를 때 마다 cnt 1증가•Cnt 출력오답 코드#.. 2025. 1. 12.
[백준 5597 | C++] 과제 안 내신 분..?_ 1차원 배열 (배열 비교, 배열에서 없는 수 찾기, array, for) 백준 5597 | C++ 과제 안 내신 분 ..?https://www.acmicpc.net/problem/5597문제X대학 M교수님은 프로그래밍 수업을 맡고 있다. 교실엔 학생이 30명이 있는데, 학생 명부엔 각 학생별로 1번부터 30번까지 출석번호가 붙어 있다.교수님이 내준 특별과제를 28명이 제출했는데, 그 중에서 제출 안 한 학생 2명의 출석번호를 구하는 프로그램을 작성하시오.접근 방법제출한 사람 번호를 받는 배열을 한 개 만든다 : 28명• 제출한 사람 번호를 입력 받는다제출한 사람을 체크하는 배열을 한 개 만든다 : 30명(크기 : 31)• 0번째 제외(0번째는 1) 0으로 초기화• 제출한 사람(인덱스) -> 1로 표시0인 인덱스만 출력정답 코드#include using namespace std.. 2025. 1. 11.
[백준 10813 | C++] 공 바꾸기_ 1차원배열(array, for) 백준 10813 공바꾸기https://www.acmicpc.net/problem/10813문제도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 매겨져 있다. 바구니에는 공이 1개씩 들어있고, 처음에는 바구니에 적혀있는 번호와 같은 번호가 적힌 공이 들어있다.도현이는 앞으로 M번 공을 바꾸려고 한다. 도현이는 공을 바꿀 바구니 2개를 선택하고, 두 바구니에 들어있는 공을 서로 교환한다.공을 어떻게 바꿀지가 주어졌을 때, M번 공을 바꾼 이후에 각 바구니에 어떤 공이 들어있는지 구하는 프로그램을 작성하시오. 문제 접근N 개의 바구니가 있다 -> N개의 배열을 만든다• 배열의 각 인덱스가 상자의 번호(0~N-1)M번 공바꾸기를 시행한다 -> M 번 for문 반복• (a b)가.. 2025. 1. 10.
[백준 10818 | C++] 최소, 최대_ 배열 순회, 1차원 배열(array loop, for) https://www.acmicpc.net/problem/10818문제N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오.접근 방법- N이 주어진다 (주어지는 수의 개수) N크기의 배열을 만든다 -> 동적으로 설정 - arr를 순회하며, 더 작은수를 찾을 때 마다 min 업데이트- arr를 순회하며, 더 큰 수를 찾을 때 마다 max 업데이트  정답 코드#include using namespace std;int main() { int N; cin >> N; int* arr = new int[N]; for (int i = 0; i > arr[i]; } int min = arr[0]; int max = arr[0]; for (int i =.. 2025. 1. 2.
[백준 10871 | C++] X보다 작은 수_ 배열 순회(array loop, for, vector) https://www.acmicpc.net/problem/10871문제정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오.접근 방법- N과 x를 입력받으면- 크기가 N인 배열에 N개의 숫자를 넣는다 -> N의 수는 계속 바뀌므로 동적 배열로 생성한다- 배열을 순회하며 arr[i]가 x보다 작으면 정답 배열에 넣는다- 이때 정답 배열의 크기를 미리 알 수 없으므로 벡터로 설정한다 정답 코드#include #include using namespace std;int main() { int N, x; cin >> N >> x; int* arr = new int[N]; vector answer; // 배열 입력 받기 .. 2025. 1. 1.
[백준 10807 | C++] 개수 세기_ 배열 순회(array loop, for) https://www.acmicpc.net/problem/10807 문제 : 총 N개의 정수가 주어졌을 때, 정수 v가 몇 개인지 구하는 프로그램을 작성하시오.문제 접근 | 손코딩그동안 흔하게 본 유형이라 금방 논리를 세웠다- 입력 받을 정수의 개수를 입력 받는다- N 개의 정수를 배열에 저장한다- 목표값 v를 받는다- 배열을 순회하며 v를 만날 때 count(사진 속 i 는 실수! 정답을 저장할 변수를 하나 더 설정해야함)를 1증가시킨다. 정답 코드#include using namespace std;int main(){ int N,v; cin >> N; int* arr = new int[N]; for (int i =0; i>arr[i];} cin>>v; int c.. 2024. 12. 30.
반응형