끄적끄적 코딩
article thumbnail
728x90

 

주어진 값들의 값을 1씩 줄여서 총 몇번이면  증가하는 수열이 되는지 찾는 문제입니다.

 

맨 뒤부터 탐색합니다. 

현재-1의 값이 현재 값보다 크면 증가하는 수열이 아니기 때문에

작아질 때까지 빼면서 카운트를 해줍니다.

작아졌다면 위치를 -1해서 다시 반복합니다.

#include <iostream>
using namespace std;

int main(int argc, char *argv[])
{
	int num[110] = { 0, };
	int n;
	int count = 0;
	cin >> n;

	for (int i = 1; i <= n; ++i) {
		cin >> num[i];
	}

	for (int j = n; j > 0; --j) {
		while (num[j] <= num[j - 1]) {
			num[j - 1]--;
			count++;
		}
	}

	cout << count << endl;

	return 0;
}

검색 태그