码迷,mamicode.com
首页 > 其他好文 > 详细

HDU 6140(水题)

时间:2017-08-17 21:20:54      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:alt   iostream   mod   std   type   scan   ++   width   memset   

根据题目中的一长串公式可以得到,顺序添加的每个水晶一定可以构成一个连续的区间。

技术分享

 

#include <algorithm>
#include <cstdio>
#include <cstring>
#include <iostream>
#include <map>
#include <string>

#define Max 1000001
#define MAXN 1000005
#define MOD 1000000007
#define rin freopen("in.txt","r",stdin)
#define rout freopen("1.out","w",stdout)
#define Del(a,b) memset(a,b,sizeof(a))
typedef long long LL;
using namespace std;
int n, k;
int a[2 * 1005];
char b[2 * 1005];
int L,R;
bool Solve() {
    int l,r;
    l=-1,r=1;
    for(int i=2;i<=n;i++){
        if(b[i]==N){
            l-=a[i];
            r+=a[i];
        }else if(b[i]==D){
            l-=a[i];
        }else{
            r+=a[i];
        }
    }
    if(k>=l&&k<=r)
        return true;
    return false;
}
int main() {
    rin;
    int T;
    while (cin >> T) {
        while (T--) {

            scanf("%d%d", &n, &k);
            for (int i = 1; i <= n; i++) {
                scanf("%d", &a[i]);
            }
            getchar();
            for (int i = 1; i <= n; i++) {
                scanf("%c", &b[i]);
                getchar();
            }
            if (Solve()) {
                cout << "yes" << endl;
            } else
                cout << "no" << endl;
        }
    }

    return 0;
}

 

HDU 6140(水题)

标签:alt   iostream   mod   std   type   scan   ++   width   memset   

原文地址:http://www.cnblogs.com/Belleaholic/p/7384153.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!