• uva 10273(模拟)


    题意:有若干个牛每个牛有一个序列每一天这头牛产奶d%tn单位(d当前天数,tn为序列长度)每天产奶最少的会被吃掉,如果有多头产奶一样少则什么也不吃。问最后会留下多少头牛,最后一头被吃掉的牛是在哪一天。

    思路:水题。纯模拟每天更新牛的产奶数量,然后把它去掉。若是天数超多lcm(1-10)则不会再有牛吃了。

    代码如下:

     1 #include <iostream>
     2 #include <cstdio>
     3 #include <cstring>
     4 #include <cstdlib>
     5 #include <algorithm>
     6 #include <utility>
     7 #include <queue>
     8 #include <stack>
     9 #include <vector>
    10 #define ll long long
    11 #define INF 0x7fffffff
    12 #define eps 1E-6
    13 #define LEN 1010
    14 #define pb(a) push_back(a)
    15 
    16 using namespace std;
    17 
    18 int n, num[LEN];
    19 vector<int> milk[LEN];
    20 
    21 int main()
    22 {
    23 //    freopen("in.txt", "r", stdin);
    24 
    25     int T;
    26     scanf("%d", &T);
    27     while(T--){
    28         scanf("%d", &n);
    29         for(int i=0; i<LEN; i++)milk[i].clear();
    30         for(int i=0; i<n; i++){
    31             scanf("%d", &num[i]);
    32             for(int j=0; j<num[i]; j++){
    33                 int v;
    34                 scanf("%d", &v);
    35                 milk[i].pb(v);
    36             }
    37         }
    38         int loc = -1, cnt = n, dm[LEN], vis[LEN];
    39         memset(vis, 0, sizeof vis);
    40         memset(dm, 0, sizeof dm);
    41         for(int d=0; ;d++){
    42             if(d-loc>700 || cnt==0)break;
    43             int Minpos = -1, Min = INF;
    44             for(int i=0; i<n; i++){
    45                 if(vis[i])continue;
    46                 dm[i] = milk[i][d%num[i]];
    47                 if(Min==dm[i])Minpos = -1;
    48                 if(Min>dm[i]){
    49                     Min = dm[i];
    50                     Minpos = i;
    51                 }
    52             }
    53             if(Minpos!=-1){
    54                 vis[Minpos] = 1;
    55                 loc = d;
    56                 cnt--;
    57             }
    58         }
    59         printf("%d %d
    ", cnt, loc+1);
    60     }
    61     return 0;
    62 }
    View Code
    奔跑吧!少年!趁着你还年轻
  • 相关阅读:
    zip加密-字符串加密成字符串
    语言学习第一天
    localStorage和sessionStorage数据存储
    ValueOf()和toString()
    call()与apply()区别typeof和instanceof的区别
    javaScript判断手机型号
    HTML&CSS
    Doctype 严格模式与混杂模式-如何触发这两种模式,区分它们有何意义?
    获得地址栏内的参数
    私有变量
  • 原文地址:https://www.cnblogs.com/shu-xiaohao/p/3493297.html
Copyright © 2020-2023  润新知