※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 25400번 문제인 제자리이다.
문제는 아래 링크를 확인하자.

https://www.acmicpc.net/problem/25400 

 

25400번: 제자리

$N$장의 카드가 좌우 일렬로 놓여있다. 각 카드에는 하나의 정수가 적혀있는데, 왼쪽에서 $i$번째 카드에 적혀있는 정수는 $A_i$다. ($1 ≤ i ≤ N$) 여러분은 $N$장의 카드 중 몇 장을 골라 제거할 수

www.acmicpc.net

무조건 첫 번째 성분은 1, 두번째 성분은 2, ...와 같이 앞에서부터 양의 정수가 순서대로 채워져있어야 하므로, 처음서부터 주어진 배열의 각 원소를 차례대로 살펴보며 1부터 하나씩 순서대로 채워나가며 제자리 배열을 만들어 문제를 해결하자.

 

아래는 제출한 소스코드이다.

#include <iostream>
using namespace std;

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);

	int nxt = 1;
	int N; cin >> N;
	for (int i = 0; i < N; i++) {
		int x; cin >> x;
		if (x == nxt) nxt++;
	}
	cout << N - nxt + 1;
}
728x90

'BOJ' 카테고리의 다른 글

[BOJ 10104 // C++] Party Invitation  (0) 2022.11.24
[BOJ 15477 // C++] 水ようかん (Mizuyokan)  (0) 2022.11.24
[BOJ 15238 // C++] Pirates  (0) 2022.11.24
[BOJ 15234 // C++] Number Pairs  (0) 2022.11.24
[BOJ 16189 // C++] Repetitive Palindrome  (0) 2022.11.24

+ Recent posts