第十届山东理工大学ACM网络编程擂台赛 正式赛B

From axuhongbo, 3 Years ago, written in Plain Text, viewed 381 times.
URL http://axuhongbo.top/paste/view/2e159027 Embed
Download Paste or View Raw
  1. #include <iostream>
  2. #include <stdio.h>
  3. int num[300],n,m;
  4. bool ok(int x){      //判断是否能养殖x天
  5.     int tot=0;         //记录可以养殖多少只竹鼠
  6.     for(int i = 1;i <= 100;i ++) tot += num[i]/x;  
  7.     if(tot >= n) return 1;   //如果可以养殖的竹鼠大于等于n则说明合法
  8.     else return 0;
  9. }
  10. int main(){
  11.     scanf("%d%d",&n,&m);
  12.     for(int i = 1;i <= m;i++){
  13.         int x;
  14.         scanf("%d",&x);
  15.         num[x]++;     //记录x类竹片的个数
  16.     }
  17.     int ans = 0;
  18.     for(int i = 1;i <= m;i++)   //枚举答案
  19.         if(ok(i)) ans = i;             //如果所枚举的答案合法,则记录
  20.     printf("%d",ans);
  21.     return 0;
  22. }
  23.  

Reply to "第十届山东理工大学ACM网络编程擂台赛 正式赛B"

Here you can reply to the paste above

captcha