• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

1-a 재귀 조합 순열없이 풀어봤는데요

23.06.05 12:28 작성 조회수 253

0

http://boj.kr/e2cc8079959e434fb04a9022bc8143ab

솔직히 시간도 오래걸렸고 많이 비효율적인거같습니다

고로 1주차부터의 공부방향이 궁금합니다

먼저직접 풀어보고 선생님께서 알려주신 방법들로도 전부 풀어보고 되도록 많은풀이법을 사용해보고 최적의 풀이를 빠르게 도출해내는 방향으로 공부하면 될까요?

답변 1

답변을 작성해보세요.

0

안녕하세요 ㅎㅅ님 ㅎㅎ

먼저직접 풀어보고 선생님께서 알려주신 방법들로도 전부 풀어보고 되도록 많은풀이법을 사용해보고 최적의 풀이를 빠르게 도출해내는 방향으로 공부하면 될까요?

>> 네 맞습니다. 이렇게 하시면 됩니다.

 

솔직히 시간도 오래걸렸고 많이 비효율적인거같습니다

>> 음 아닙니다. 이 코드 좋습니다. ㅎㅅ님. 해당 2개의 난쟁이를 골라 sort를 했을 때 가장 뒷부분으로 빠지게 하면서 최대범위 이상의 값을 넣은 부분도 좋았고 sort, if문 다 좋은 거 같습니다.

다만 조금 다듬어봤습니다. 비교하시면서 참고해주세요.

#include <bits/stdc++.h>
using namespace std;
int ar[9];
int sum;
int fs;

int main(){
	for(int i = 0; i < 9; i++){
		cin >> ar[i];
		sum += ar[i];
	}
	fs = sum - 100;
	for(int i = 0; i < 9; i++){
		for(int j = i + 1; j < 9; j++){
			if(ar[i] != ar[j] && fs == ar[i] + ar[j]){
				ar[i] = 99999999;
				ar[j] = 99999999;
				sort(ar,ar+9);
				for(int i = 0; i < 7; i++){
					cout << ar[i] << '\n';	
				} 
				return 0;
			}
		}
	}
}

앞으로도 이렇게만 쭉 부탁드립니다.

 

 

또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제가 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.

ㅎㅅ님의 프로필

ㅎㅅ

질문자

2023.06.06

감사합니다 끝까지 열심히 공부하겠습니다!