Wannafly模拟赛3-B 贝伦卡斯泰露(DFS)
来源:互联网 发布:证券软件下载 编辑:程序博客网 时间:2024/06/16 17:27
题目链接:https://www.nowcoder.com/acm/contest/13/B
题解:枚举两个序列的起点,直接爆搜即可。
#include<set> #include<map> #include<stack> #include<queue> #include<vector> #include<string> #include<time.h> #include<math.h> #include<stdio.h> #include<iostream> #include<string.h> #include<stdlib.h> #include<algorithm> #include<functional> using namespace std; #define ll long long #define inf 1000000000 #define mod 1000000007 #define maxn 50 #define lowbit(x) (x&-x) #define eps 1e-9 int a[maxn],b[maxn],n,c[maxn],flag,used[maxn];bool dfs(int x,int y,int num){if(num==n/2)return 1;used[x]=used[y]=1;int xx=x+1,yy=y+1;while(xx<=n && used[xx])xx++;while(1){while(yy<=n && (used[yy] || xx==yy || a[xx]!=a[yy]))yy++;if(xx<=n && yy<=n){if(dfs(xx,yy,num+1))return 1;yy++;}elsebreak;}used[x]=used[y]=0;return 0;}int main(void){int T,i;scanf("%d",&T);while(T--){flag=0;memset(used,0,sizeof(used));scanf("%d",&n);for(i=1;i<=n;i++)scanf("%d",&a[i]);for(i=2;i<=n/2+1;i++)if(a[1]==a[i] && dfs(1,i,1)){flag=1;break;}if(flag)printf("Frederica Bernkastel\n");elseprintf("Furude Rika\n");}return 0;}
阅读全文
0 0
- Wannafly模拟赛3-B 贝伦卡斯泰露(DFS)
- Wannafly模拟赛3
- Wannafly模拟赛3 贝伦卡斯泰露(搜索+剪枝)
- Wannafly模拟赛4 B Distance
- Wannafly模拟赛4 B Distance
- Wannafly模拟赛4 B题
- Wannafly模拟赛3 题解
- Wannafly模拟赛3 题解
- Wannafly模拟赛3 贝伦卡斯泰露 【折半搜索+hash,状压dp】
- Wannafly模拟赛3 绝对半径2051(尺取)
- Wannafly模拟赛3 监视任务(贪心+线段树)
- Wannafly模拟赛4 B.Distance 最大曼哈顿距离
- Wannafly模拟赛4 B题 Distance 【最大曼哈顿距离】
- Wannafly模拟赛3 反蝴蝶效应
- Wannafly模拟赛3 生物课程
- Wannafly模拟赛 树(dp)
- 10.9wannafly模拟赛
- Wannafly模拟赛4
- Removed Interval HDU
- (四)系统虚拟化关键技术
- 设备树详解(链接很好,作者嵌入式Linux见解深刻)
- android基本架构
- js数据类型笔记
- Wannafly模拟赛3-B 贝伦卡斯泰露(DFS)
- JVM调优总结(3):垃圾回收面临的问题
- IPC(进程间通信)-基本概念
- Lua中元表Metatables与元方法Metamethods
- Java——线程同步代码优化
- 使用nw.js开发的桌面任务管理提醒软件
- Hive之UDF,UDAF自定义函数
- 外网IP访问不了阿里云的IIS服务
- 欧几里德算法求最大公约数