제출 #145487

#제출 시각아이디문제언어결과실행 시간메모리
145487charlies_mooRasvjeta (COCI17_rasvjeta)C++98
10 / 50
3 ms384 KiB
#include <iostream>
using namespace std;
int main(){
	int n,l,k;
	cin>>n>>k>>l;
	int light[n+1];
	int s;
	for(int i=1;i<=n;i++){
		light[i]=0;
	}
	for(int i=0;i<k;i++){
		cin>>s;
		for(int j=s-k;j<=s+k;j++){
			if(j>=1&&j<=n){
				light[j]=1;
			}
		}
	}
	//for(int i=1;i<=n;i++){
		//cout<<light[i]<<" ";
	//}
	int flag=0;
	int time=0;
	while(flag==0){
		int flag2=0;
		int biggest=0;
		int seat;
		for(int i=1;i<=n;i++){
			if(light[i]==0){
				flag2=1;
			}
		}
		if(flag2==1){
			time++;
			for(int i=1;i<=n;i++){
				int tot=0;
				if(light[i]==0){
					for(int j=i-k;j<=i+k;j++){
						if(j>=1&&j<=n){
							if(light[j]==0){
								tot++;
							}
						}
					}
				}
				if(tot>biggest){
					biggest=tot;
					seat=i;
				}
			}
			for(int i=seat-k;i<=seat+k;i++){
				if(i>=1&&i<=n){
					light[i]=1;
				}
			}
		}
		else{
			flag=1;
		}
	}
	cout<<time;
} 

컴파일 시 표준 에러 (stderr) 메시지

rasjveta.cpp: In function 'int main()':
rasjveta.cpp:51:12: warning: 'seat' may be used uninitialized in this function [-Wmaybe-uninitialized]
    for(int i=seat-k;i<=seat+k;i++){
            ^
#Verdict Execution timeMemoryGrader output
Fetching results...