Codeforces 라운드 # 585 (사업부. 2) [보충]

머리말

어제 오후 나는 빨리, 비행기를 작업을 채울 수 있기 때문에, 바로 작성하고, 이번 주까지 완료 타이틀이 달려 있지 않은, D 타이틀을 보였다.

노란색 카드

루오 구 CF1215A

처음에는 너무 당황 좋은 방법을 생각하지 않습니다.

수크는 큰 형님 같은 방법을 제공합니다 :

  • 를 들어 \ (최소 \) , 우리는 각 사람이 머리를 부여한다고 가정 ((K-1) \ \를 ) 카드, \ (A_1 \)가 있다 \ ((k_1-1) \) , \ (A_2이 \) 입니다 \ ( (k_2-1) \) , 각 사람은 "채도"를 달성하고, 나머지는 각각 옐로우 카드 운명 만들 수 있도록.

  • 를 들어 \ (최대 \) , 우리가 열거 폭력을 사용 (내가 \) \을 에, \ (A_1 \) 넣어 (내가 \) \를 장은에서 \ (A_2 \) 넣어 \ ((NI) \) 최대를 찾고, 장을 같은 값

암호

#include<algorithm>
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
inline int read() {
    int x=0,f=1; char ch=getchar();
    while(ch<'0' || ch>'9') { if(ch=='-') f=-1; ch=getchar(); }
    while(ch>='0'&&ch<='9') { x=(x<<3)+(x<<1)+(ch^48); ch=getchar(); }
    return x * f;
}
int n,a1,a2,k1,k2,Max,Min;
int main()
{
    a1 = read(), a2 = read(), k1 = read(), k2 = read(), n = read();
    Min = max(0, n-((k1-1)*a1+(k2-1)*a2));
    for(int i=0;i<=n;++i) {
        Max = max(Max, min(a1 ,i/k1)+min(a2, (n-i)/k2));
    }
    printf("%d %d\n",Min,Max);
    return 0;
}

추천

출처www.cnblogs.com/BaseAI/p/11529924.html