게으른카르

백준 1026 보물 c++

C
2023. 4. 2. 19:44

백준 1026 보물

백준 1026번 "보물" 문제의 자세한 내용은 글 하단의 문제 링크를 참고하세요.

1026 문제에 주어지는 입력 및 예시

입력: 

5
1 1 1 6 0
2 7 8 3 1

출력:

18

코드

백준 1026번 "보물" 문제의 코드입니다.

#include <bits/stdc++.h>
using namespace std;
int A[51];
int B[51];
bool comp(int i,int j){
	return i>j;
}
int main(){
	ios_base::sync_with_stdio(false);
	cin.tie(NULL); cout.tie(NULL);
	int N,sum=0;
	cin>>N;
	for(int i=0;i<N;i++)
		cin>>A[i];
	for(int i=0;i<N;i++)
		cin>>B[i];
	sort(A,A+N);
	sort(B,B+N,comp);
	for(int i=0;i<N;i++)
		sum+=A[i]*B[i];
	cout<<sum;
	return 0;
}

시간초과를 피할 수 없었던 next_permutaiton...

그냥 코드만 올려봅니다.

더보기
#include <bits/stdc++.h>
using namespace std;
int A[51];
int B[51];
int main(){
	ios_base::sync_with_stdio(false);
	cin.tie(NULL); cout.tie(NULL);
	int N,tmp;
	cin>>N;
	for(int i=0;i<N;i++){
		cin>>A[i];
	}
	sort(A,A+N);
	for(int i=0;i<N;i++){
		cin>>B[i];
	}
	tmp=2100000000;
	do{
		int result=0;
		for(int i=0;i<N;i++)
			result+=A[i]*B[i];
		if(tmp>result)
			tmp=result;
	} while(next_permutation(A,A+N));
	cout<<tmp;
	return 0;
}

실행

위의 코드를 예제의 입력을 넣어 실행했을 때의 결과입니다.

 

반응형

'C' 카테고리의 다른 글

백준 11170 0의 개수 C++  (0) 2023.04.02
백준 1213 팰린드롬 만들기 C++  (0) 2023.04.02
백준 1024 수열의 합 C++  (0) 2023.03.31
백준 9375 패션왕 신해빈 C++  (0) 2023.03.31
백준 1620 나는야 포켓몬 마스터 이다솜 C++  (0) 2023.03.31

이 글을 공유합시다

facebook twitter googleplus kakaoTalk kakaostory naver band