算法訓練 最大獲利 注意數據規模(long long)

資源限制
時間限制:1.0s   內存限制:256.0MB
問題描述
  Chakra是一位年輕有爲的企業家,最近他在進軍餐飲行業。他在各地開拓市場,共買下了N個飯店。在初期的市場調研中,他將一天劃分爲M個時間段,而且知道第i個飯店在第j個時間段內,會有Aij位服務員當值和Bij位客戶光臨。他還分析了不一樣飯店不一樣時間段客戶的需求,獲得第i個飯店在第j個時間段內,平均每位客戶消費Cij元。爲了創設品牌形象,Chakra決定每一個飯店天天只選擇一個時間段營業,每一個服務員至多接待一位顧客(若顧客數多於服務員數,超過部分的顧客當天就沒法在該店消費了)。
  企業家的目的終究仍是獲利。請你安排營業時間,並告訴Chakra天天消費總額最多爲多少。
輸入格式
  第一行兩個整數,N、M。
  第二行開始依次給出三個矩陣A(N*M)、B(N*M)、C(N*M)。
輸出格式
  一行一個整數,最大消費總額。
樣例輸入
2 3
1 2 3
3 2 1
3 2 1
1 2 3
4 5 2
3 1 6
樣例輸出
16
數據規模和約定
  1 <= M,N <= 100
  1 <= Aij, Bij <= 5000
  0 <= Cij <= 10^9
特別注意數據的規模
 1 #include<iostream>
 2 using namespace std;
 3 //author:Qiang
 4 int main(){
 5     int n,m;
 6     cin>>n>>m;
 7     long long a[n][m],b[n][m],c[n][m],d[n][m];
 8     for(int i=0;i<n;i++){
 9         for(int j=0;j<m;j++){
10             cin>>a[i][j];
11         }
12     }
13     for(int i=0;i<n;i++){
14         for(int j=0;j<m;j++){
15             cin>>b[i][j];
16         }
17     }
18     for(int i=0;i<n;i++){
19         for(int j=0;j<m;j++){
20             cin>>c[i][j];
21             if(a[i][j]<b[i][j]){
22                 d[i][j]=c[i][j]*a[i][j];
23             }else{
24                 d[i][j]=c[i][j]*b[i][j];
25             }
26         }
27     }
28     long long all=0;
29     for(int i=0;i<n;i++){
30         long long max=0;
31         for(int j=0;j<m;j++){
32             if(d[i][j]>max)max=d[i][j];
33         }
34         //cout<<max<<endl; 
35         all=all+max;
36     }
37     cout<<all;
38     return 0;    
39 }注意數據的規模
相關文章
相關標籤/搜索