강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

DWG담님의 프로필 이미지
DWG담

작성한 질문수

it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비

46. 멀티 태스킹

질문드립니다.

작성

·

227

0

이렇게 코드를 작성하였는데 처리되지 않은 예외가 뜹니다.

일일이 메모장에 입력을 가져다가 출력해봤는데 정답이 뜹니다. 그래도 뭔가 찝찝해서 무언가 실수가 있는지 확인해주시면 감사하겠습니다 ㅠ(이때까지 이런오류는 없었습니다)

#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main(void)
{
	int N, K, cnt = 0, work = 0, i;

	cin >> N;

	vector<int> v(N + 1);
	for (i = 1; i <= N; ++i) {

		cin >> v[i];
		work += v[i];
	}
	i = 1;
	cin >> K;
	while (true)
	{
		if (work == 0) {

			cout << -1;
			return 0;
		}
		if (cnt == K) break;
		else ++i;
		
		if (i > N) i = 1;
		
		if (v[i] == 0 && work != 0)
		{
			while (v[i] == 0) {
				if (i > N) i = 1;
				else ++i;
			}
		}

		--work;
		--v[i];
		++cnt;

	}
	cout << i;


	return 0;
}

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

제 컴퓨터에서는 100점이 나오는데 무슨 오류가 뜬다는 건지 모르겠습니다.

DWG담님의 프로필 이미지
DWG담

작성한 질문수

질문하기