题目名称 | 1285. [Clover 10] 环岛旁边 |
---|---|
输入输出 | roundabout.in/out |
难度等级 | ★ |
时间限制 | 1000 ms (1 s) |
内存限制 | 128 MiB |
测试数据 | 10 |
题目来源 | Makazeu 于2013-01-09加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:4, 提交:22, 通过率:18.18% | ||||
wangyucheng | 100 | 0.002 s | 0.32 MiB | C++ |
LYLlyl | 100 | 0.003 s | 0.30 MiB | C++ |
晖灰熊 | 100 | 0.003 s | 0.32 MiB | C++ |
晖灰熊 | 100 | 0.003 s | 0.32 MiB | C++ |
LYLlyl | 90 | 1.003 s | 0.29 MiB | C++ |
LYLlyl | 50 | 1.002 s | 0.29 MiB | C++ |
LYLlyl | 50 | 1.004 s | 0.29 MiB | C++ |
江羽道 | 40 | 0.002 s | 0.29 MiB | C++ |
HouJikan | 30 | 0.003 s | 0.31 MiB | C++ |
HouJikan | 20 | 0.002 s | 0.31 MiB | C++ |
关于 环岛旁边 的近10条评论(全部评论) |
---|
Rainbow和Freda在掷骰子的时候rp爆发,居然掷出了满点><(其实我就不说所有的a[i]都是1),顺利到达了环岛旁。它们正观察着这个环岛的时候,环岛居然开口说话了T_T:
欢迎来到魔界环岛。我会告诉你们环岛的运行方式,并且邀请你们帮我解决一个问题。环岛在东西南北四个方向分别有一个入口和出口,环岛内的车辆逆时针行驶。车辆可以进入、离开环岛或者在环岛内行进一步,这三种操作每次都是耗时1秒。在环岛内行进一步,即从东走到北,从北走到西,从西走到南或者从南走到东(换句话说,行进两步就可以围绕环岛走半圈了)。如果操作不互相干扰,所有车辆的操作可以同时进行。比如,环岛上有两辆车,一辆在另一辆的后面,它们可以一起在环岛内行进一步。一辆车是否进入环岛取决于它们这一秒是否可以进入,如果此时可以进入,它一定会进入,否则就将加入或者停留在该方向的等待序列中。每个方向的等待序列是按照车辆到达的时间从早到晚排序的,任何一辆车都不可能“插队”。
什么时候一辆车可以进入环岛呢?这取决于它上一秒得到的信息。如果第i-1秒时,它所在方向的顺时针紧邻方向的环岛上和等待序列里面都没有车,而且它是所在方向等待序列的第一辆车,那么它在第i秒可以进入环岛。特别地,四个方向的等待序列里都有车的时候,北面的车优先行驶——即只要第i-1秒时东面环岛上没有车,第i秒的时候,北面等待的第一辆车就可以进入环岛了;当然,如果第i秒的时候东面环岛上有车,所有等待车辆将一直等待,直到东面环岛上没有车的时候,北面等待的第一辆车才可以通行。
当然,每个车辆都有一个目标方向,一旦一辆车A到达了目标方向,它就会马上离开环岛。注意,如果此时它的目标方向有另一辆车B在等待进入环岛且B车这时可以进入环岛,A车离开环岛和B车进入环岛是发生在同一秒的。
“我将给你们每秒车辆到达环岛旁的信息,请你们帮我计算,最后一辆车离开环岛的时间好吗?”
四行,每行一个字符串。
第一行一个字符串N,只含有‘-’,‘S’,‘W’,‘E’四种字符,字符串的第i个字符N[i]表示第i-1秒的时候,有一辆来自北方向、目标方向为N[i]的车等待进入环岛,如果N[i]=’-',表示第i-1秒没有车来自北方向。
第二行一个字符串E,只含有 ‘-’,‘S’,‘W’,‘N’四种字符,含义同上。
第三行一个字符串S,只含有 ‘-’,‘N’,‘W’,‘E’四种字符,含义同上。
第四行一个字符串W,只含有 ‘-’,‘S’,‘N’,‘E’四种字符,含义同上。
对于字符串中的字符,N表示北方向,E表示东方向,W表示西方向,S表示南方向。
一行一个整数totalTime,表示最后一辆车离开环岛的时间。
样例输入1 -- -- WE -S 样例输入2 ES N E -- 样例输出1 6 样例输出2 9
样例解释
样例1如图所示:
数据范围与约定
对于50%的数据,每个字符串长度<=10.
对于100%的数据,0<每个字符串长度<=100.
Clover Stage 10