강의

멘토링

커뮤니티

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

smart4047님의 프로필 이미지
smart4047

작성한 질문수

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

26. 마라톤

코드한번 봐주실수 있나요?

작성

·

170

0

영상 보기 전에 한번 풀어봤습니다. 채점했을 때 5개 모두 합격했습니다만 혹시 다듬어야할 부분이 있나 확인 부탁드립니다.

#include<stdio.h>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
//	freopen("input.txt", "rt", stdin);
	int n,i,j;
	scanf("%d", &n);
	int rank = 0;
	vector <int> a(n);
	vector <int> b(n);
	
	for(i=0; i<n; i++){
		scanf("%d", &a[i]);
		b[i]= rank+(n-(n-i)+1);//b0 =1 ~ b7 = 8등 최소 등수 
	}
	//자기 기준 앞 사람을 앞서 갈수 있나 확인  
	for(i=n-1; i>-1; i--){
		for(j=i-1; j>-1; j--){
			if(a[i]>a[j]){
				b[i] = b[i]-1;
			}
		}
	}
	for(i=0; i<n; i++){
		printf("%d ", b[i]);
	}
	
	return 0;
}

답변 1

0

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

좋은 코드입니다. 

b[i]=i+1로 초기화하면 가독성이 더 좋을 것 같습니다. 그 외에는 딱히 다음을 부분은 없는것 같습니다.

smart4047님의 프로필 이미지
smart4047

작성한 질문수

질문하기