코딩문제/구름 IDE

1단계 : 고장난 컴퓨터

Drill_Labito 2020. 7. 1. 10:46

줄에 입력하는 시간 n, 타이머 c 주어진다.

결국 시간이 1,2,3 초동안 흐르면서 n개의 입력하는시간에 혜지가 입력을 넣는다는 것이고,

입력과 입력 사이가 c 이하면 화면에 남아있고, 초과하면 화면에서 지워지는 개념이다.

 

입력 케이스가 최대 10^9 까지이나, 기존의 int 형으로 제출하니 테스트 케이스를 통과하지 못하는곳이 있어, 대신 unsigned int 형을 사용하여, 범위를 넓힘. 이후 모든 케이스 통과

 

#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
	unsigned int n, c, count=0; //count : 현재 남은 글자 개수
 	cin >> n >> c; //n , c 입력
	
	unsigned int *arr = (unsigned int*)calloc(n,sizeof(unsigned int));
	for(unsigned int i=0;i<n;i++){
		cin >> arr[i];
		if(i==0) {
			count++;		
		}
		else{
			if((arr[i] - arr[i-1]) <= c) count++;
			else count=1;
		} 
 	}
	cout << count << endl;
	free(arr);
	return 0;
}