Problem H: 小姐姐的QQ号(DFS)
Contest - 河南省多校连萌(四)
Problem H: 小姐姐的QQ号
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 297 Solved: 20
Description
Input
Output
Sample Input
Sample Output
HINT
第一个样例可以分解成两个完全一样的子序列 4 2 8 9和4 2 8 9;
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#include <map>
#include <queue>
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N = ;
int a[N], b[N], c[N];
int flag, n;
void dfs(int pos,int len1,int len2,int st)//算法的奥秘
{
if(len1>n/+ ||len2>n/+ ||flag) return ;
if(len1==n/+ && len2==n/+)
{
flag=;
return ;
}
if(pos==)
{
b[]=a[];
dfs(pos+,len1+,len2,st);
}
else
{
if(a[pos]==b[st])
{
c[len2]=a[pos];
dfs(pos+,len1,len2+,st+);
}
b[len1]=a[pos];
dfs(pos+,len1+,len2,st);
}
return ;
} int main()
{
int t;
while(scanf("%d", &t),t!=)
{
while(t--)
{
flag=;
scanf("%d", &n);
for(int i=; i<=n; i++) scanf("%d", &a[i]);
dfs(,,,);
if(flag) printf("竟然还有这种操作\n");
else printf("没有这种操作\n");
}
} return ;
}
题意:给一个长度为n的数组,判断是否可以将其分为两个完全相同长度为n/2的子序列;(子序列是指数字之间在原序列的前后顺序不变)
解:dfs,从起点遍历,开两个序列数组,
(1) 当前遍历的位置如果和第一个序列中的相对应的位置相同则加入第二个序列中 第一个序列的对应位置加1,
(2) 或者加入第一个序列中延伸长度
//这种题看似很简单其实要是让我来写的话,我可能写不出来,里面用到了递归的思想,这种思想虽然是算法里面最基本的思想,但是理解起来还是有一定的难度的
Problem H: 小姐姐的QQ号(DFS)的更多相关文章
- Problem H: 小火山的围棋梦想 多校训练2(小火山专场)
题目链接:http://acm.zzuli.edu.cn/zzuliacm/problem.php?id=1908 题意:如果'.'被'*'围起来,就把'.'变为'*'. 分析:如果是'*'直接输出, ...
- linux 定时任务---给心爱的小姐姐发情书
目录 1.计划任务基本概述 什么是crond? 为什么要用crond? 2.计划任务时间管理 crontab配置文件解析 crontab的时间编写规则 crontab命令选项 3.计划任务编写实践 使 ...
- HDU 6326.Problem H. Monster Hunter-贪心(优先队列)+流水线排序+路径压缩、节点合并(并查集) (2018 Multi-University Training Contest 3 1008)
6326.Problem H. Monster Hunter 题意就是打怪兽,给定一棵 n 个点的树,除 1 外每个点有一只怪兽,打败它需要先消耗 ai点 HP,再恢复 bi点 HP.求从 1 号点出 ...
- HDU 6326 Problem H Monster Hunter
\(\mathtt{Problem H}\) \(\mathtt{Monster}\) \(\mathtt{Hunter}\) \(\mathcal{Description}\) 题目 给定一棵 \( ...
- 牛客寒假算法基础集训营3处女座和小姐姐(三) (数位dp)
链接:https://ac.nowcoder.com/acm/contest/329/G来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言52428 ...
- 处女座和小姐姐(三)-数位dp1.0
链接:https://ac.nowcoder.com/acm/contest/329/G来源:牛客网 题目描述 经过了选号和漫长的等待,处女座终于拿到了给小姐姐定制的手环,小姐姐看到以后直呼666! ...
- 【坐在马桶上看算法】算法4:队列——解密QQ号
新学期开始了,小哈是小哼的新同桌(小哈是个小美女哦~),小哼向小哈询问QQ号,小哈当然不会直接告诉小哼啦,原因嘛你懂的.所以小哈给了小哼一串加密过的数字,同时小哈也告诉了小哼解密规则. ...
- (转)最全正则表达式总结:验证QQ号、手机号、Email、中文、邮编、身份证、IP地址等
什么是 RegExp? RegExp 是正则表达式(Regular expression)的缩写,作用是对字符串执行模式匹配. 通常用于格式验证.正则替换.查找子串等 各种编程语言的正则表达式基本相同 ...
- 处女座和他的小姐姐(三)----数位DP
链接:https://ac.nowcoder.com/acm/contest/329/G来源:牛客网 经过了选号和漫长的等待,处女座终于拿到了给小姐姐定制的手环,小姐姐看到以后直呼666! 处女座其实 ...
随机推荐
- IOS AudioServicesPlaySystemSound 后台锁屏播放
AudioServicesPlaySystemSound 想在锁屏后台播放报警提示音. 添加了UIBackgroundModes,audio,官方审核不通过! IOS的闹钟是怎么实现的,锁屏不能播放声 ...
- 设置 UILabel 和 UITextField 的 Padding 或 Insets (理解UIEdgeInsets)
转自http://unmi.cc/uilable-uitextfield-padding-insets 主要是理解下UIEdgeInsets在IOS UI里的意义. 靠,这货其实就是间隔,起个名字这么 ...
- 字段名与属性名不一致问题 通过resultMap解决
- maven下拉项目不能同步
maven下拉项目不能同步,如下图: 解决方法: 对项目右键,team, 选择这里 我选择第一项,有的需要根据情况选择第二项,如果点击完成后,还是不能同步代码,对项目右键,team,disconnec ...
- 命名空间p方式的属性注入
---------------------siwuxie095 命名空间 p 方式的属性注入 命名空间 p 方式的属性注入是 Spring 2.x 版本后提供的方式 1.编写一个普通类 Book.ja ...
- springMVC框架的作用
springMVC:是一个表现层框架 作用:就是从请求中接收传入的参数 将处理后的结果数据返回给页面展示
- Android JIN简单单步调试
ADTr20已经比较完美支持NDK开发了.可以集成ndk编译,只需在项目右键Add Native Support,就能自动生成jni文件,并部署编译环境(注意这个过程是不可逆的,手动删除jni文件后, ...
- Lamda表达式,map和集合操作
1.Lamda表达式,map快速获取对象的某一个属性生成集合 List<String> elementSlugs = elementInstanceBOList.stream().map( ...
- UVaLive 4043 Ants (最佳完美匹配)
题意:给定 n 个只蚂蚁和 n 棵树的坐标,问怎么匹配使得每个蚂蚁到树的连线不相交. 析:可以把蚂蚁和树分别看成是两类,那么就是一个完全匹配就好,但是要他们的连线不相交,那么就得考虑,最佳完美匹配是可 ...
- redis 工具
搜索关键词:redis 工具 推荐:http://redisdesktop.com/download 点评:使用顺手,顺畅. ★★★★★ 五星好评 备注:redis key 可以采用某种format ...