我的CodeF水A题之路

Codeforces Round #359 (Div. 2)

A. Free Ice Cream

 

题目链接:http://www.codeforces.com/problemset/problem/686/A

题意:N个人在排队,一开始店主有M个冰淇凌,队伍中第i个人可能是一个送冰激凌的工人,他会带给店主+A[i]个冰淇凌,也可能是一个小朋友,他想要-A[i]个冰淇凌,当排到一个小朋友的时候,如果店主现在手里的冰淇凌数量能满足他,那么就满足他,不然小朋友就会一个冰淇凌也不拿失望的离开。

question:队伍中所有的人都走了之后店主剩下的冰淇凌数量和失望离开的小朋友的数量。

 1 #include<cstdio>
 2 #include<cstring>
 3 #include<iostream>
 4 #include<algorithm>
 5 #include<map>
 6 using namespace std;
 7 #define LL long long
 8 int n;
 9 LL xx;
10 struct node
11 {
12     int kid;
13     LL x;
14     char c;
15 }X[1010];
16 int main()
17 {
18    while(scanf("%d%d",&n,&xx)!=EOF)
19    {
20        for(int i=0;i<n;i++)
21        {
22            X[i].kid=i+1;
23            cin>>X[i].c;
24            cin>>X[i].x;
25        }
26        for(int i=0;i<n;i++)
27        {
28            if(X[i].c=='+')
29                xx+=X[i].x;
30             if(X[i].c=='-')
31             {
32                 if(xx>=X[i].x)
33                     xx-=X[i].x;
34                 else
35                     X[i].kid=0;
36             }
37        }
38        int s=0;
39        for(int i=0;i<n;i++)
40        {
41            if(X[i].kid==0)
42             s++;
43        }
44        printf("%I64d %d\n",xx,s);
45    }
46    return 0;
47 }
View Code359

 

转载于:https://www.cnblogs.com/yinqx/p/5628258.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值