题意:

有一个二维坐标系,
你开始你在(0,0)点,给定坐标(mx,my),
给定长度为n的字符串,只包含LRUD,对应上下左右,
现在你可以重排这个字符串,要求你按照重排的字符串走,
走的时候不能碰到(mx,my)点,
如果有解输出重排之后的字符串,
如果无解输出Impossible.

数据范围:n<=1e6,-1e9<=mx,my<=1e9

解法:

可以证明一定存在一种答案,使得相同的方向是连续排在一起的。
枚举 UDLR 的 24 种排列即可。

code:

#include <bits/stdc++.h>
using namespace std;
const int maxm=1e6+5;
int dx[]={-1,1,0,0};
int dy[]={0,0,1,-1};
string dir="LRUD";
char s[maxm];
int mx,my;
int cnt[4];
int a[4];
int n;
bool check(){int x=0,y=0;for(int i=0;i<4;i++){for(int j=1;j<=cnt[a[i]];j++){x+=dx[a[i]];y+=dy[a[i]];if(x==mx&&y==my)return 0;}}return 1;
}
signed main(){int T;cin>>T;while(T--){scanf("%d%d",&mx,&my);scanf("%s",s+1);if(mx==0&&my==0){puts("Impossible");continue;}n=strlen(s+1);for(int i=0;i<4;i++)cnt[i]=0;for(int i=1;i<=n;i++){if(s[i]=='L')cnt[0]++;//lelse if(s[i]=='R')cnt[1]++;//relse if(s[i]=='U')cnt[2]++;//uelse if(s[i]=='D')cnt[3]++;//d}for(int i=0;i<4;i++)a[i]=i;int ok=0;do{if(check()){ok=1;break;}}while(next_permutation(a,a+4));if(ok){for(int i=0;i<4;i++){for(int j=1;j<=cnt[a[i]];j++){printf("%c",dir[a[i]]);}}puts("");}else{puts("Impossible");}}return 0;
}

2020ICPC南京 E.Evil Coordinate(构造)相关推荐

  1. Evil Coordinate亚洲区域赛(南京)

    Evil Coordinate 亚洲区域赛(南京) 你好! 我是一个刚刚接触acm的小菜鸡,今天对南京站的E有一点想法,写在这里和大家分享一下. 由于自己的代码能力比较弱,所以写的比较繁琐.欢迎大家优 ...

  2. 2020ICPC南京区域赛 补题 总结

    前言 第一次打线上 ICPC\text{ICPC}ICPC ,记录一下.听说鸭血粉丝汤很好吃,虽然我没吃到,衣服也不赖.比赛环境方面,由于使用自己的设备,还是比较舒服的. 不晓得怎么,一到正式赛,前期 ...

  3. Evil Coordinate

    ac Evil Coordinate 思路 代码 思路   本题答题意思,机器人从(0,0)出发,根据题目的输入字符串,到达终点,在已知的路径中会有一个地雷,要求在不改变字符串数量的前提下改变顺序,不 ...

  4. Evil Coordinate(70行精简代码) 2020icpc南京站

    目录 大致题意: 思路: 代码: 南京站其余题目(点击进入) 大致题意: 在一个图中,一个人从(0,0)进行上下左右行走.有一个地雷点(mx,my).询问可不可以通过改变行走上下左右的顺序(不改变上下 ...

  5. 第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(南京)签到题E Evil Coordinate

    problem 链接:https://ac.nowcoder.com/acm/contest/10272/E 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144 ...

  6. 2020ICPC(南京) - Just Another Game of Stones(吉司机线段树+博弈)

    题目链接:点击查看 题目大意:给出一个长度为 nnn 的数列 aaa,现在需要执行 mmm 次操作,每次操作分为两种类型: 1lrx1 \ l \ r \ x1 l r x:对于所有 i∈[l,r]i ...

  7. Evil Coordinate(思维+贪心)

    题目传送门 唉,这道题出的妙啊,本蒟蒻想破头皮也想不出来. 这道题感觉和我之前在cf做的一道题的思考方式(枚举方式)很类似 链接如下 类似题目传送门 怎么做呢? 当时的思路实际上就是想绕过这个地雷.但 ...

  8. 2020-2021 ACM-ICPC, Asia Nanjing Regional Contest E. Evil Coordinate

    题目: 思路分析: 只要是对UDLR全排列,实质上就已经尽可能的避免了重复板块.如果这样都有重叠的,也就意味着再怎么打乱也不行! 代码实现: /* *@Author: GuoJinlong *@Lan ...

  9. 第 45 届国际大学生程序设计竞赛(ICPC)亚洲区域赛(南京)

    K:Co-prime Permutation   签到题.一个常见的套路:相邻两个数的最大公因子是1.这个结论得出来以后,除了k≠0k\not =0k​=0的情况时Impossible,其他情况都 ...

最新文章

  1. ccache编译器缓存使用方法
  2. 医学与人工智能交叉融合,打开眼科理疗新窗
  3. 雷军:小米二为何不用1300万像素相机_TechWeb
  4. Dubbo 线上调服务方法空指针问题
  5. MySQL Router实现MySQL的读写分离
  6. java 最大子数组_求一个数组中子数组的最大和算法(Java实现)
  7. 阿里云服务器上安装java配置jdk
  8. Alsa中PCM参数设置
  9. ASP.NET Core如何限制请求频率
  10. php面试编程题_PHP程序员面试题(经典汇总,mysql为主)
  11. 使用 Adobe AIR 管理 WordPress 评论
  12. 【Flink】Flink Association with remote system akka Connection refused
  13. PSIM软件学习---03 电路的创建与仿真
  14. php+system+info_systeminfo命令详解
  15. Linux下命令行导入sql文件
  16. 把oracle卸载恢复,oracle干净卸载
  17. 关于LNK2005的错误
  18. 名人漏网之语 --联合早报2007-01-28
  19. 山西好点的计算机专科学校排名及分数线,2019山西十大专科学校排名及高考录取分数线...
  20. pc微信多开hook版本3.2.1.123

热门文章

  1. 相继招安“杂牌军”三大品牌PC渠道战走向非正规
  2. winxp死亡倒计时,大家快安装使用汉澳sinox!
  3. 从解读微表情、法律条文到合约金融壹账通惊艳世界人工智能大会
  4. web网页上一个帖子点赞是怎么制作的_网页时光机,教你如何找回一个消失的网页...
  5. “平”地而起,2022中国企业数智服务市场趋势洞察报告即将发布
  6. 解决Ubuntu执行sudo命令后提示无法解析主机
  7. AI art 实验:同样的Prompt, DALLE2 跟 Disco Diffusion 的创作大比拼
  8. 微软Win10 系统更新安装驱动软件不兼容等,驱动人生解决方案
  9. Python3 Selenium+ChromeDriver抓取动态网页
  10. 复合函数的凸性判定函数扩展须知