UVA1013201串配对
来源:互联网 发布:wpf 管理系统源码购 编辑:程序博客网 时间:2024/05/16 14:30
这题没什么说的,排序之后,暴力就行了。
#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<string>#include<set>#include<map>#include<iostream>#include<algorithm>#include<vector>#include<queue>using namespace std;const int maxn=500;const double eps=1e-5;string s[maxn];int n;int t;int L;bool cmp(string a,string b){ return a.length()<b.length();}bool is_true(string tem){ bool visit[maxn]; memset(visit,0,sizeof(visit)); for(int i=0;i<t;i++) { for(int j=t-1;j>i;j--) { if(!visit[j]&&s[i].length()+s[j].length()==L) { if(s[i]+s[j]==tem||s[j]+s[i]==tem) { visit[i]=visit[j]=1; break; } } } } for(int i=0;i<t;i++) if(!visit[i]) return 0; return 1;}string solve(){ L=s[0].length()+s[t-1].length(); for(int i=0;s[i].length()==s[0].length();i++) for(int j=t-1;s[j].length()==s[t-1].length();j--) { string tem=s[i]+s[j]; if(is_true(tem)) { return tem; } tem=s[j]+s[i]; if(is_true(tem)) { return tem; } }}int main(){ while(cin>>n) { getchar(); getchar(); while(n--) { t=0; while(getline(cin,s[t])&&!s[t].empty()) t++; sort(s,s+t,cmp); string ans=solve(); cout<<ans<<endl; if(n) cout<<endl; } } return 0;}
0 0
- UVA1013201串配对
- 配对
- 配对
- FOJ 1411 最长配对子串
- 【FZU】Problem 1411 最长配对子串
- fuzhuo------ Problem 1411 最长配对子串
- 生肖配对
- 括号配对
- 括号配对
- 蓝牙配对
- 【贪心】配对
- 括号配对
- 括号配对
- 括号配对
- 配对堆
- 括号配对
- 括号配对
- 括号配对
- Android事件传递机制(二)
- 利用泛型实现一个简单的android orm小例子
- 数学排列好难--- QAQ的问题
- LeetCode : Longest Common Prefix [java]
- QVariant类
- UVA1013201串配对
- ♥HDOJ 5635-LCP Array
- 微信iOS卡顿监控系统
- poj Risk 1603 (最短路) 坑
- 关于linux异步通知signal 和QT的信号槽
- 【HPU】[1728]序列找数
- 大型网站架构系列:电商网站架构案例
- vim 多窗口编辑
- GET和POST的区别