최 적 스케줄 문제

1238 단어
제목 설명
       n 개의 임 무 를 k 개의 병행 가능 한 기계 로 완성 한다 고 가정 합 니 다.퀘 스 트 i 완성 에 필요 한 시간 은 ti 입 니 다.하나의 알고리즘 을 시험 적 으로 설계 하여 이 n 개의 임 무 를 완성 하 는 가장 좋 은 스케줄 을 찾 아 모든 임 무 를 완성 하 는 시간 이 가장 빠르다.
       주어진 정수 n 과 k, 그리고 임 무 를 수행 하 는 데 필요 한 시간 은 ti, i = 1 ~ n 입 니 다.프로 그래 밍 은 이 n 개의 작업 의 최 적 화 된 스케줄 을 완성 합 니 다.
입력
입력 데 이 터 를 드 립 니 다.첫 줄 에는 두 개의 정수 n 과 k 가 있다.두 번 째 줄 의 n 개의 정 수 는 n 개의 임 무 를 완성 하 는 데 필요 한 시간 이다.
출력
계 산 된 모든 작업 을 완료 하 는 가장 빠 른 시간 출력
샘플 입력
7  3
2  14  4  16  6  5  3

샘플 출력
17
#include
#include
using namespace std;
 
int n,k;
int a[1000+5]={0};
int sum[1000+5]={0};
int amin=99999999;
 
void tiao(int step,int amax);
bool cmp(const int& a,const int& b){
return a>b;
}
int main()
{
    cin>>n>>k;
    for(int i=1;i<=n;i++)
        scanf("%d",&a[i]);
    sort(a+1,a+n+1,cmp);
    tiao(1,0);
    printf("%d
",amin); return 0; } void tiao(int step,int amax) { if(amax>=amin) return; if(step==n+1) { if(amax

좋은 웹페이지 즐겨찾기