#P5610. 牧场危机

牧场危机

题目描述

约翰和他的奶牛组建了一只乐队"后街奶牛",现在他牛正在牧场里排练.奶牛牛分成一堆一堆,共N(1{N(1≤}N{N≤}1000){1000)}堆.每一堆里,30{30}只奶牛一只踩在另一只的背上,叠成一座牛塔.牧场里还有M(1{M(1≤}M{M≤}1000){1000)}个高高的草垛.

作为出色的指挥家,约翰可以通过口哨指挥奶牛牛移动.他的口哨有四个音,分别能使所有的牛塔向东南西北四个方向移动一格.

每一次,当一个牛塔到达了一个草垛所在的格子,牛塔最上方的奶牛就会跳到草垛上,而且不再下来,而其他奶牛仍然呈塔状站在草垛所在的格子里.当牛塔只剩一只奶牛时,这只奶牛也会跳到草垛上.突然,约翰大惊失色:原来邻家的奶缸爆炸了!

滚滚而下的牛奶正朝着约翰的牧场冲来,不久就要将牧场淹没.约翰必须马上行动,用口哨声挽救奶牛牛的生命.他要指挥奶牛尽量多地跳上草垛,草垛上的奶牛将不会被淹死.

约翰还有K{K}次吹口哨的机会.那他最多还能救多少奶牛呢?

请计算最多能挽救的奶牛数,以及达到这个数目约翰需要吹的口哨调子序列.序列用E{E,}W{W,}S{S,}N{N}表示东西南北.如果有多种序列能达到

要求,输出作为字符串最小的.

输入格式

1{1}

输入三个整数N{N,}M{M,}K{K,}之后N{N}行每行输入一对整数(Xi{(Xi,}Yi){Yi)}表示一座牛塔所在的位置, 1<=K<=30{1<=K<=30}

之后M{M}

每行输入一对整数(Xi{(Xi,}Yi){Yi)}表示一个草垛所在的位置.

1{1≤}Xi{Xi≤}1000{1000};1{1≤}Yi{Yi≤}1000.{1000.}

输出格式

1{1}行输出最多能挽救的奶牛数.

2{2}行输出口哨调子序列.

样例

输入样例

3 6 3
3 4
6 2
5 7
8 2
9 2
6 4
5 4
6 7
8 7

输出样例

6
EEE

提示

用"东方"哨子吹三次,这时牛奶就会泛滥该区域。每个干草堆最终拯救了一头牛。