http://codeforces.com/problemset/problem/299/B

题意 :这个题挺简单的,就是说这个姑娘不喜欢走有石头的扇形,所以给你一个k的值,代表她一次可以跳多少扇形。

思路 :由于细节问题,那些循环的边界没弄好WA了几次,不过后来终于改对了。。。。

#include<stdio.h>
#include<string.h>
#include<iostream>
using namespace std;
const int maxn = 301100 ;
char ch[maxn] ;
int main()
{
    int n,k ;
    scanf("%d %d",&n,&k);
        int flag = 0,j;
        for(int i = 0 ; i < n ; i++)
        scanf("%c",&ch[i]) ;
        for(int i = 0 ; i < n ; i++)
        {
            if(ch[i] == '.'&&ch[i+1] == '#')
            {
                for(j = i+1 ; j <= k+i ; j++)
                {
                    if(ch[j] != '#')
                        break ;
                }
                if(j == k+i+1)
                {
                    flag = 1 ;
                    break ;
                }

            }
        }
        if(flag)
        printf("NO\n") ;
        else
        printf("YES\n") ;
    return 0 ;
}
View Code

 

posted on 2013-11-16 19:48  枫、  阅读(310)  评论(0编辑  收藏  举报