Algorithm/코드포스

Codeforces Round #752 (Div. 2) , 1576 -> 1457

Edyy 2021. 11. 1. 00:36

Dashboard - Codeforces Round #751 (Div. 2) - Codeforces

 

Dashboard - Codeforces Round #751 (Div. 2) - Codeforces

 

codeforces.com

!!!! 모든 답은 제 풀이일 뿐 정해가 아닐 수 있습니다 !!!!

 

 

A. Era

Problem - A - Codeforces

 

Problem - A - Codeforces

 

codeforces.com

문제

 

길이가 n인 배열 a가 주어졌을 때, 원하는 위치에 임의의 숫자를 넣을 수 있다. 이때 모든 i에 대하여 a[i] <= i 가 될 수 있도록 넣을 수 있는 최소 숫자의 갯수를 출력하는 문제

 

풀이

 

모든 i에 대하여 a[i] > i인 i를 찾아 max(a[i]-i)를 출력한다. 

 

코드

 

#include <bits/stdc++.h>
using namespace std;
long long a[101];
int main() {
	ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
	int T;
	cin >> T;
	while (T--) {
		int n;
		cin >> n;
		long long ans = 0;
		for (int i = 1; i <= n; i++) {
			cin >> a[i];
			ans = max(ans, a[i] - i);
		}
		cout << ans << '\n';
	}
}

자세한 설명에 중점을 두기보다는 대회 기록에 중점을 둔 글입니다 !

틀린 부분은 감사히 지적받겠습니다.