zoukankan      html  css  js  c++  java
  • Codeforces Round #249 (Div. 2) A题

    链接:http://codeforces.com/contest/435/problem/A
     
    A. Queue on Bus Stop
    time limit per test
    1 second
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    It's that time of the year when the Russians flood their countryside summer cottages (dachas) and the bus stop has a lot of people. People rarely go to the dacha on their own, it's usually a group, so the people stand in queue by groups.

    The bus stop queue has n groups of people. The i-th group from the beginning has ai people. Every 30 minutes an empty bus arrives at the bus stop, it can carry at most m people. Naturally, the people from the first group enter the bus first. Then go the people from the second group and so on. Note that the order of groups in the queue never changes. Moreover, if some group cannot fit all of its members into the current bus, it waits for the next bus together with other groups standing after it in the queue.

    Your task is to determine how many buses is needed to transport all n groups to the dacha countryside.

    Input

    The first line contains two integers n and m (1 ≤ n, m ≤ 100). The next line contains n integers: a1, a2, ..., an (1 ≤ ai ≤ m).

    Output

    Print a single integer — the number of buses that is needed to transport all n groups to the dacha countryside.

    Sample test(s)
    input
    4 3
    2 3 2 1
    output
    3
    input
    3 4
    1 2 1
    output
    1

    00000000000000000000000000000000000000000000000000000000000000
    题意是说几伙人上公交车,每一辆公交车都有限载的量,且,每一伙人如果不能全部上车就等下一辆
    问需要多少量车

     1 #include <stdio.h>
     2 #include <string.h>
     3 #include <stdlib.h>
     4 
     5 int main()
     6 {
     7     int n,m,i,j;
     8     int str[105];
     9     while(scanf("%d%d",&n,&m)!=EOF)
    10     {
    11         for(i=0; i<n; i++)
    12             scanf("%d",&str[i]);
    13         int bus=0,mark;
    14         for(i=0; i<n; i++)
    15         {
    16             if(str[i] == m)
    17                 bus++;
    18             else
    19             {
    20                 int sum=str[i];
    21                 //mark=i;
    22                 for(j=i+1; j<n; j++)
    23                 {
    24                     sum += str[j];
    25                     if(sum == m)
    26                     {
    27                         //j--;
    28                         i=j;
    29                         bus++;
    30                         sum=0;
    31                         break;
    32                     }
    33                     if(sum > m)
    34                     {
    35                         j--;
    36                         i=j;
    37                         bus++;
    38                         sum=0;
    39                         break;
    40                     }
    41                 }
    42                 if(i == n-1 && sum > 0)
    43                     bus++;
    44             }
    45         }
    46         printf("%d
    ",bus);
    47     }
    48 }
  • 相关阅读:
    面试官让我手写一个生产者消费者模式
    怎么用wait、notify巧妙的设计一个Future模式?
    并发编程之Master-Worker模式
    你和那些优秀的人差距在哪里?
    idea 2019.3 最新版破解教程
    JVM垃圾回收详解
    Java类加载器和双亲委派机制
    Java代理模式/静态代理/动态代理
    JSP自定义标签/自定义标签打包
    MyBatis关联查询 (association) 时遇到的某些问题/mybatis映射
  • 原文地址:https://www.cnblogs.com/ccccnzb/p/3900292.html
Copyright © 2011-2022 走看看