POJ 1699 Best Sequence

Python小白避坑指南:用Ursina做3D图形,Entity的scale和color参数到底怎么调才不出错? 本文详细解析了Python Ursina引擎中Entity对象的scale和color参数调优技巧,帮助3D图形编程初学者避开常见陷阱。通过对比实验和典型场景分析,深入讲解三种缩放方式的区别、颜色定义的四种方法,以及参数组合的协同效应,助力开发者精准控制3D图形表现。 阅读详情

题目链接:点击打开链接

题目大意:

给你不超过10个长度不超过20的字符串,如果某两个字符串的首尾相同或没有相同,都可以连接起来,例如TCGG和GGAT就可以连接为TCGGAT,问把给你的所有字符串都按

照这种规则连接起来,最短长度是多少?

题目解析:

首先因为n和字符串长度都很小,我们可以直接模拟处理出每个字符串两两之间的可以合并的长度是多少,例如TCGG和GGAT的可合并的长度为2,那么给每个字符串编号之

后,我们可以得到一个n*n的矩阵,然后直接深搜就可以了,注意处理细节题目所求的总的长度,例如a在前b在后,所以对于a字符串就是字符串的长度len,之后都是

len+b.len-cal(a,b);

#include <algorithm>
#include <iostream>
#include <numeric>
#include <cstring>
#include <iomanip>
#include <string>
#include <vector>
#include <cstdio>
#include <queue>
#include <stack>
#include <cmath>
#include <map>
#include <set>
#define LL long long
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
const int m = 100007;
const double esp = 1e-6;
const double PI = 3.14159265359;
const int INF = 0x3f3f3f3f;

using namespace std;

const int maxn = 105;

char arr[15][maxn];
int Map[15][15],ans;
int arr_size[15];
bool vis[maxn];

int cal(char a[],char b[]){
    int lena = strlen(a);
    int lenb = strlen(b);
    int num = 0,Min = min(lena,lenb);
    for(int i=Min;i>=1;i--){
        int l = lena - i,r = 0,f = 1;
        for(int j=lena - i;j<lena;j++){
            if(a[j] != b[r]){
                f = 0;
            }
            r += 1;
        }
        if(f)
            return i;
    }
    return 0;
}

void faw(int x,int s,int num,int n){
    if(s == n){
        ans = min(ans,num);
        return ;
    }
    for(int i=0;i<n;i++){
        if(!vis[i]){
            vis[i] = 1;
            faw(i,s + 1,num + arr_size[i] - Map[x][i],n);
            vis[i] = 0;
        }
    }
}

int main(){
    int t,n;
    scanf("%d",&t);
    while(t-- && ~scanf("%d",&n)){
        for(int i=0;i<n;i++){
            scanf("%s",arr[i]);
            arr_size[i] = strlen(arr[i]);
        }
        memset(Map,0,sizeof(Map));

        for(int i=0;i<n;i++){
            for(int j=i+1;j<n;j++){
                Map[i][j] = cal(arr[i],arr[j]);
                Map[j][i] = cal(arr[j],arr[i]);
            }
        }

        memset(vis,false,sizeof(vis));

        ans = INF;

        for(int i=0;i<n;i++){
            vis[i] = true;
            faw(i,1,arr_size[i],n);
            vis[i] = false;
        }
        printf("%d\n",ans);
    }
    return 0;
}


AI辅助专利撰写实战:用Codex 30分钟生成发明专利初稿 这次我们来看一个用 Codex 从零开始撰写发明专利的实战项目。对于技术研发人员、产品经理或初创团队来说,专利申请是保护创新成果、构建技术壁垒的关键一步。然而,撰写一份高质量的专利申请书,尤其是权利要求书和说明书,往往需要专业的法律和技术语言,耗时耗力。这个项目演示了如何利用 AI 工具 Codex,在短时间内生成一份结构完整、逻辑清晰、具备授权潜力的专利申请文件初稿。 整个过程的核心不是让 AI 完全替代专利代理人,而是将其作为强大的“技术翻译”和“内容生成”助手。它能将你的技术构思、流程图、核心算法或产 阅读详情

相关推荐

Simplicity Studio V5与EFR32BG22蓝牙开发环境实战指南

本文详细介绍了Simplicity Studio V5集成开发环境与EFR32BG22蓝牙芯片的开发实战指南。内容涵盖开发环境安装、SDK配置、项目创建、调试烧录、外设驱动集成及常见问题解决方案,帮助开发者快速上手物联网蓝牙应用开发,并充分利用EFR32BG22的低功耗与高集成度特性。

v5w6x的博客 320

poj1699题解

//Memory 156K Time 47MS #include <iostream> #include <cstdio> #include <string> using namespace std; string *geneStr; bool *visit; int n, minLength, **addLength; void updateLength...

xiaozhou163的博客 1530

【电路设计】带阻滤波器实战:从理论到Twin-T陷波电路实现

本文详细介绍了带阻滤波器的原理与Twin-T陷波电路的实战应用,从基础概念到工程实现全面解析。通过具体案例展示如何设计高Q值滤波器,解决电源噪声等实际问题,并分享PCB布局和元件选型的实用技巧,助力工程师提升电路设计能力。

gg901的博客 1022

POJ 1699- Best Sequence (DFS+查表法)

题目链接 题目大意:     给定N个基因片段,每个片段的长度在1到20之间,注意:每个片段长度不一样啊,我一开始以为都为N!求去除重叠基因后字符串的总长最小值 解题思路:     全排列问题啊!将所有的基因片段全排列,两两计算重复的字母个数(模拟即可),最后计算出去除重复基因总长,选择最小值。 典型的DFS问题,但是就因为计算两个基因片段的重复字母数,整整搞了一天!现在看来还是

小梁的编程学习之旅 719

Adversarial Texture for Fooling Person Detectors in the Physical World

本文提出了对抗纹理的想法(AdvTexture),与基本补丁攻击不同对抗纹理可以生成任意大小,可以覆盖任意大小的不了,并且纹理的任何局部都有对抗性的效果。当衣服被对抗纹理覆盖是,摄像头捕捉到的每一个局部区域都可以攻击探测器,这成功解决了片段缺失的问题。提出了一种两阶段生成方法:基于环形收割的可扩展生成攻击(TC-EGA)来制作广告纹理。第一阶段,训练一个全卷积网络FCN作为生成器,通过采样随机潜变量作为输入来产生纹理(不同于GAN中传统的生成器架构,每一层都使用卷积运算)......

weixin_49171105的博客 1067

PCIe扫盲(三)

需要特别注意的是,PCIe的Spec中明确规定只有Root有权限发起配置请求(Originate Configuration Requests),也就是说PCIe系统里面的其他设备是不允许去配置其他设备的配置空间的,即peer-to-peer的配置请求是不允许的。当配置请求进行BDF路由的时候,正是依靠这些信息来确定要找的设备的。前面的文章还介绍过,Root和Switch的每一个端口中都包含一个P2P桥,并且知道桥的配置空间头(Configuration Space Header)是Type1型的。

Liuqz2009的专栏 2404

求解poj1699

程序写完运行正常,结果也正确,可是上交到poj却出现Runtime Error不知道是什么原因,有大神帮忙看看吗!!! POJ1699 (http://poj.org/problem?id=1699)题意如下:基因由DNA组成,而DNA是由A(腺嘌呤)、C(胞嘧啶)、G(鸟嘌呤)、T(胸腺嘧啶)构成。对给定的一些基因片段的首尾相连,可以找到一个最短的序列,它包含所有的基因片段,而且任何一段基因都不...

qq_44439151的博客 1350

PaddleOCR实战:如何在CentOS 8.5上搭建高性能OCR识别环境

本文详细介绍了在CentOS 8.5系统上搭建高性能PaddleOCR识别环境的完整指南。从系统环境准备、PaddlePaddle框架部署到PaddleOCR的定制化安装与性能优化,提供了针对生产环境的解决方案,包括GPU/CPU环境配置、内核参数调优及常见问题排查,帮助用户实现高效OCR识别。

weixin_29223603的博客 349

状态压缩DP POJ 1699解题报告

http://acm.pku.edu.cn/JudgeOnline/problem?id=1699今天在做POJ 1699时,明显感觉用DP可以解,但是始终找不到合适的状态方程和子结构。在discuss中看到有人讨论用“状态压缩dp”求解比较方便,于是花了一下午时间去查找状态dp的资料,在上一篇(zz)中看到了一篇讲解非常详细的介绍,于是就开始来分析POJ 1699。看到这一题的第一直觉是

ClearRiver 's Style 1554

CVPR 2023 中的半监督学习: FixMatch 的升级版 UniMatch

我们首先回顾下发表在 NeurIPS 2020 上的 FixMatch: Simplifying Semi-Supervised Learning with Consistency and Confidence,FixMatch 是一种更轻量的半监督分类方法。如下图所示,FixMatch 首先使用模型(带标签数据训练后的)对弱增强的未标记图像进行预测,生成伪标签。对于给定的图像,只有在模型产生高置信度的预测时,伪标签才会被保留。然后,在输入同一图像的强增强版本时,训练模型预测伪标签。

NJU phd 在读。 2634

数学史学习资料:史前数学

著名物理学家伽莫夫(宇宙大爆炸理论以及核聚变理论的提出者)在他的科普书《从1到无穷大》中举了这样一个例子。两个原始部落的酋长比赛,看谁说的数字大。第一个酋长说了三,第二个酋长想了半天,然后说你赢了。你今天听起来觉得这两个人真可笑,至少说出四,岂不就赢了?但是对这两位酋长来讲,所拥有的东西就很少超过三个,比三个多的东西他们就觉得没有必要数清楚了,就用许多来形容了。也就是说,他们生活的环境限制了他们的认知。

howard2005的专栏 902

poj 1699 搜索(AGCT组成最短串,题目有BUG)

题意:给定若干个DNA(由AGCT组成)串,求一个能够包含所有四

dearmango 719

如何懂固高卡以及滚筒轴+平移轴配合运动?

🏆本文收录于专栏,主要记录项目实战过程中所遇到的Bug或因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家!持续更新中,up!up!up!!

**My Coding Family** 851

poj 1699 Best Sequence

题目链接:http://poj.org/problem?id=1699 题目思路:先用kmp算最大匹配,然后问题就转化成了一个TSP问题,直接用状态压缩dp求解即可。 #include #include #include #include #include #include #include #include #include #include #include using namespace

Wings_of_Liberty的专栏 877

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

POJ1699:Best Sequence(DP)

Description The twenty-first century is a biology-technology developing century. One of the most attractive and challenging tasks is on the gene project, especially on gene sorting program. Recentl

ACM!荣耀之路! 2666

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

poj 1699 Best Sequence(dfs)

http://poj.org/problem?id=1699 题意:给出n个只含A,C,G,T的字符串,要求能把这n个字符串组合起来的最短长度。 思路:预处理一下,a[i][j]表示将第j个字符串连接到第i个字符串后面增加的长度,那么我们需要找出这样一个序列1,2....n满足a[1][2] + a[2][3] + ...+a[n-1][n]的最小值。DFS就OK了,任选一个字

1076

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

POJ1699 Best Sequence DP DFS

题意: 给定几个长度为L的基因序列,问同时包含这几个基因序列的最小序列长度。 思路: 注意到拼装的过程中,基因序列i和基因序列j的关系无非是谁在前,谁在后。 所以DP一下: 取一个dp[i][j]代表:基因i直接接在基因j前面时,叠加后的长度-4的值。 比如i=ATGC;j=GCTA;则dp[i][j]=2. 然后对dp[i][j]进行枚举即可,因为我们要的是一个连贯的序列,

Aszxqw 1281

POJ 1699 Best Sequence G++ dfs 背

#include <iostream> #include <string> #include <cstring> #include <algorithm> using namespace std; //英语 看博友分析 抄博友程序 dfs 背 string da[20]; int chang[20][20]; int used[20]; int ans; int n; void fun(int ti,int tj) { ...

woniupengpeng的专栏 234

poj1699Best Sequence(TSP)

题目链接:点这里!!! 题解: 我们直接求出两两之间的公共部分是多少,然后直接跑TSP就ok了,但是有个梗,我们要事先对字符串按长度排好序,尽可能去匹配长的,就可以了!!!! 给组数据: /* 5 aaaaaaa a aa aaa aaaaab */ 代码: #include #include #include #include #includ

Zsss的博客 572
上一篇: Codeforces 400 A. Inna and Choose Options
下一篇: POJ 3411 Paid Roads
哆啦AC梦
博客等级 码龄12年 13粉丝 87原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值