zoukankan      html  css  js  c++  java
  • 初始化codeforce 298 B Sail初始化

    发一下牢骚和主题无关:

        The polar bears are going fishing. They plan to sail from (sx, sy) to (ex, ey). However, the boat can only sail by wind. At each second, the wind blows in one of these directions: east, south, west or north. Assume the boat is currently at (x, y).

        

    • If the wind blows to the east, the boat will move to (x + 1, y).
    • If the wind blows to the south, the boat will move to (x, y - 1).
    • If the wind blows to the west, the boat will move to (x - 1, y).
    • If the wind blows to the north, the boat will move to (x, y + 1).

        Alternatively, they can hold the boat by the anchor. In this case, the boat stays at (x, y). Given the wind direction for t seconds, what is the earliest time they sail to (ex, ey)?

        

    Input

        The first line contains five integers t, sx, sy, ex, ey (1 ≤ t ≤ 105, - 109sx, sy, ex, ey ≤ 109). The starting location and the ending location will be different.

        The second line contains t characters, the i-th character is the wind blowing direction at the i-th second. It will be one of the four possibilities: "E" (east), "S" (south), "W" (west) and "N" (north).

        

    Output

        If they can reach (ex, ey) within t seconds, print the earliest time they can achieve it. Otherwise, print "-1" (without quotes).

        

    input
        每日一道理
    只有启程,才会到达理想和目的地,只有拼搏,才会获得辉煌的成功,只有播种,才会有收获。只有追求,才会品味堂堂正正的人。
    5 0 0 1 1
    SESNW

        

    output
    4

        

    input
    10 5 3 3 6
    NENSWESNEE

        

    output
    -1

        

    Note

        In the first sample, they can stay at seconds 13, and move at seconds 24.

        In the second sample, they cannot sail to the destination.

        

        

        #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>






    int sx,sy,ex,ey;
    int t;
    char direc[100100];
    int nneed,eneed,wneed,sneed;//每次都得初始化
    int n,e,w,s;//每次都得初始化
    void caculate()
    {
    nneed=0;eneed=0;sneed=0;wneed=0;
    int tempx=ex-sx;
    int tempy=ey-sy;
    if(tempx>=0)
    {
    eneed=tempx;
    }
    else
    {
       wneed=-tempx;
    }
    if(tempy>=0)
    {
    nneed=tempy;
    }
    else
    {
    sneed=-tempy;
    }


    }
    int isposi(int a)
    {
    if(a<0)
    return 0;
    else return a;
    }
    int compare()
    {
    if(isposi(nneed-n)==0&&isposi(sneed-s)==0&&isposi(eneed-e)==0&&isposi(wneed-w)==0)
    return 1;
    else return 0;
    }
    void solve()
    {
    n=0;s=0;e=0;w=0;
    scanf("%s",direc);
    for(int i=0;i<t;i++)
    {
    switch(direc[i])
    {
    case 'N':
    {
    n++;
    break;
    }
    case 'S':
    {
    s++;
    break;
    }
    case 'E':
    {
    e++;
    break;
    }
    case 'W':
    {
    w++;
    break;
    }
    }
    if(compare()==1)
    {
    printf("%d\n",i+1);
    return;
    }
    }
    printf("-1\n");
    }
    int main(int argc, char *argv[])
    {
    while(scanf("%d %d %d %d %d",&t,&sx,&sy,&ex,&ey)!=EOF)
    {
    caculate();//算计须要的n,e,s,w
    solve();
    }
    return 0;
    }

    文章结束给大家分享下程序员的一些笑话语录: 女人篇
      有的女人就是Windows虽然很优秀,但是安全隐患太大。
      有的女人就是MFC她条件很好,然而不是谁都能玩的起。
      有的女人就是C#长的很漂亮,但是家务活不行。
      有的女人就是C++,她会默默的为你做很多的事情。
      有的女人就是汇编虽然很麻烦,但是有的时候还得求它。
      有的女人就是SQL,她会为你的发展带来莫大的帮助。

  • 相关阅读:
    帆软报表之改变局部行字体加粗变色显示
    帆软报表统计所有行
    Solr7.4.0的API(Solrj)操作(转载)
    solr安装-tomcat+solrCloud构建稳健solr集群(转载)
    solr安装-tomcat单机版(转载)
    mysql优化
    systemctl管理Tomcat启动、停止、重启、开机启动
    fatal: unable to access 'https://github.com:***' 或者本机ping不通github.com解决方法
    java通过使用Thumbnails实现图片压缩放大
    java实现动态Excle模板文件导入
  • 原文地址:https://www.cnblogs.com/jiangu66/p/3033348.html
Copyright © 2011-2022 走看看