题解:P11997 化食欲为动力

· · 题解

P11997 化食欲为动力 题解

题意

一个人吃饭,有 n 个面包, m 个火腿肠, k 盒牛奶,要你求出他所能获得的动力最大值。

分析

因为这道题的 n,m,k 都只有200,最大只有 200^3=8000000不会超时,直接用 O(nmk)的方法暴力即可。

事实上就是让你三个食品分别选一个然后计算求最大值

Code

#include <bits/stdc++.h>
#define int long long//不开long long见祖宗
using namespace std;
int n,m,k,i,j,l,ma;
int a[210],b[210],c[210];
main(){
    cin>>n>>m>>k;//读入
    for(i=1;i<=n;i++) cin>>a[i];
    for(i=1;i<=m;i++) cin>>b[i];
    for(i=1;i<=k;i++) cin>>c[i];
    ma=-2e9;
    for(i=1;i<=n;i++)//暴力枚举每一个面包
        for(j=1;j<=m;j++)//暴力枚举每一个火腿肠
            for(l=1;l<=k;l++)//暴力枚举每一盒牛奶
                ma=max(ma,(a[i]*b[j])%c[l]);//计算并求最大
    cout<<ma;//输出结果
  return 0;//好习惯
}