1900 · 基因相似度(同向双指针)
链接https://www.lintcode.com/problem/1900/description题解https://www.lintcode.com/problem/1900/solution/34926class Solution { public: /** * param gene1: a string * param gene2: a string * return: return the similarity of two gene fragments */ string geneSimilarity(string gene1, string gene2) { // write your code here std::pairvectorint, vectorchar s1 split(gene1); std::pairvectorint, vectorchar s2 split(gene2); int i 0; int j 0; int m s1.first.size(); int n s2.first.size(); int sum sum_count(s1.first); int same_count 0; while (i m j n) { //cout s1.second[i] s2.second[j] endl; //cout s1.first[i] s2.first[j] endl; if (s1.second[i] s2.second[j]) { same_count min(s1.first[i], s2.first[j]); } if (s1.first[i] s2.first[j]) { s1.first[i] - s2.first[j]; j; } else if (s1.first[i] s2.first[j]) { s2.first[j] - s1.first[i]; i; } else { i; j; } } return to_string(same_count) / to_string(sum); } std::pairvectorint, vectorchar split(const std::string gene) { vectorint count; vectorchar str; for (int i 0; i gene.size();) { int sum 0; while (i gene.size()) { if (!(0 gene[i] gene[i] 9)) { break; } sum sum * 10 (gene[i]-0); //cout sum endl; i; } count.push_back(sum); str.push_back(gene[i]); i; } return pairvectorint, vectorchar(count, str); } int sum_count(vectorint nums) { int sum 0; for (auto num : nums) { sum num; } return sum; } };

相关新闻

Rust 的 Arc<Mutex<T>> 用法

Rust 的 Arc<Mutex<T>> 用法

1 含义Arc<Mutex<T>> 让T可以在多线程中被修改。Arc&#xff08;Atomic Reference Counting&#xff09;&#xff1a;原子引用计数&#xff0c;允许多个线程共享同一份数据的所有权&#xff08;类似 Rc&#xff0c;但线程安全&#xff09;。Mutex&#xff08;互斥锁…

2026/6/27 7:44:41阅读更多 →
初心如磐践使命 奋楫笃行启新程 —— 成都爱普 27 年坚守成就四川办公服务领军品牌

初心如磐践使命 奋楫笃行启新程 —— 成都爱普 27 年坚守成就四川办公服务领军品牌

1999 到 2026,二十七载春秋更替;从初心出发,向标杆前行。成都爱普商用机器有限公司历经二十七年深耕细作,从一家初创服务企业,成长为四川办公自动化领域规模大、实力强、技术专、服务优、口碑好的领军品牌。二十七年里,成都爱普始终坚守服务使命、秉持诚信理念、深耕专业领域、…

2026/6/27 7:44:41阅读更多 →
技术风险的识别评估与应对预案制定

技术风险的识别评估与应对预案制定

技术风险的识别评估与应对预案制定 在数字化时代&#xff0c;技术风险已成为企业运营中不可忽视的挑战。无论是数据泄露、系统宕机&#xff0c;还是新兴技术应用中的不确定性&#xff0c;都可能对企业造成重大损失。科学识别技术风险、精准评估其影响&#xff0c;并制定有效的…

2026/6/27 7:44:41阅读更多 →
Navicat Mac版无限试用期重置终极指南:3种简单方法永久免费使用

Navicat Mac版无限试用期重置终极指南:3种简单方法永久免费使用

Navicat Mac版无限试用期重置终极指南&#xff1a;3种简单方法永久免费使用 【免费下载链接】navicat_reset_mac navicat mac版无限重置试用期脚本 Navicat Mac Version Unlimited Trial Reset Script 项目地址: https://gitcode.com/gh_mirrors/na/navicat_reset_mac 还…

2026/6/27 9:15:00阅读更多 →
配置浮点许可管理器,要实现“动态分配“?看这几个参数

配置浮点许可管理器,要实现“动态分配“?看这几个参数

能实现&#xff0c;但90%的人卡在参数配置上。 你搜这个标题&#xff0c;大概率是已经买了FlexNet或者RLM&#xff0c;但发现默认配置根本做不到动态分配&#xff0c;对吧&#xff1f;我跟你说&#xff0c;不是软件不行&#xff0c;是你没动对那几个参数。2026年最新的FlexNet …

2026/6/27 9:15:00阅读更多 →
2026 专业的上海北极贝批发公司?实测解读行业痛点与解决方案

2026 专业的上海北极贝批发公司?实测解读行业痛点与解决方案

在深入调研上海北极贝批发市场后发现&#xff0c;众多餐饮从业者普遍面临北极贝货源渠道不稳定、产品品控标准不一、以及跨区域配送损耗高等核心痛点。据《2026年中国餐饮供应链白皮书》显示&#xff0c;超过65%的餐饮企业因海鲜供应链问题导致菜品出品质量波动&#xff0c;其中…

2026/6/27 9:15:00阅读更多 →
水泵叶轮平衡机

水泵叶轮平衡机

在水泵制造与应用领域&#xff0c;水泵叶轮的平衡至关重要。不平衡的叶轮会导致水泵振动加剧、噪音增大、使用寿命缩短&#xff0c;甚至影响整个系统的稳定运行。而申帛试验机旗下的水泵叶轮平衡机&#xff0c;正是解决这些问题的得力助手。下面&#xff0c;我们就来详细了解一…

2026/6/27 9:15:00阅读更多 →
光伏电站环境监测与设备可视化管理平台方案

光伏电站环境监测与设备可视化管理平台方案

西北地区具有日照辐射强烈、昼夜温差巨大、风沙天气频发等典型气候特征&#xff0c;对光伏组件的发电效率、设备运行寿命及现场运维管理构成了严峻挑战。而现有管理模式难以满足精细化、集约化的运营要求&#xff0c;亟需构建一套能够精准感知环境变化、联动分析发电数据、实现…

2026/6/27 9:15:00阅读更多 →
BDP 558/568 hydrazide能够通过形成稳定的腙键,特异性地标记生物分子中的醛基或酮基

BDP 558/568 hydrazide能够通过形成稳定的腙键,特异性地标记生物分子中的醛基或酮基

【Part 1&#xff1a;基础知识】 中文名&#xff1a;BDP 558/568 酰肼 英文名&#xff1a;BDP 558/568 hydrazide 分子式&#xff1a;C16H16N4BClF2OS 分子量&#xff1a;396.65 【Part 2&#xff1a;理化性质】 外观&#xff1a; 深色固体&#xff08;Dark colored solid&…

2026/6/27 9:10:00阅读更多 →
【人工智能】一文搞定到底什么是智能体

【人工智能】一文搞定到底什么是智能体

【人工智能】一文搞定到底什么是智能体 一文搞定到底什么是智能体【人工智能】一文搞定到底什么是智能体一. LM&#xff0c;WorkFlow&#xff0c;Agent分别有什么么不同二. Agent的思考过程是怎样的三. Agent的五个核心部分1&#xff09;LLM2&#xff09;Prompt3&#xff09;Me…

2026/6/26 11:03:22阅读更多 →
嵌入式GUI控件实战:ROTARY、SCROLLBAR、SLIDER原理与应用

嵌入式GUI控件实战:ROTARY、SCROLLBAR、SLIDER原理与应用

1. 嵌入式GUI控件&#xff1a;从原理到实战的深度解析在嵌入式系统开发中&#xff0c;图形用户界面&#xff08;GUI&#xff09;的设计与实现往往是项目从“能用”到“好用”的关键一跃。不同于资源充沛的PC或移动平台&#xff0c;嵌入式设备的GUI需要在有限的CPU性能、内存空间…

2026/6/27 5:46:02阅读更多 →
Google AI Studio 300美元额度的真相与实战指南

Google AI Studio 300美元额度的真相与实战指南

1. 这300美金不是“送钱”&#xff0c;而是Google埋下的第一道技术门槛 你看到标题里那个醒目的“$300美金”时&#xff0c;第一反应可能是&#xff1a;又一个免费额度&#xff1f;领完就完事&#xff1f;我亲手试过——这300美金根本不是红包&#xff0c;而是一张入场券&…

2026/6/26 9:29:01阅读更多 →
10分钟AI语音克隆与实时变声:Retrieval-based-Voice-Conversion-WebUI完整指南

10分钟AI语音克隆与实时变声:Retrieval-based-Voice-Conversion-WebUI完整指南

10分钟AI语音克隆与实时变声&#xff1a;Retrieval-based-Voice-Conversion-WebUI完整指南 【免费下载链接】Retrieval-based-Voice-Conversion-WebUI Easily train a good VC model with voice data < 10 mins! 项目地址: https://gitcode.com/GitHub_Trending/re/Retrie…

2026/6/27 0:04:03阅读更多 →
Layerdivider:3分钟AI智能分层,彻底告别手动抠图时代

Layerdivider:3分钟AI智能分层,彻底告别手动抠图时代

Layerdivider&#xff1a;3分钟AI智能分层&#xff0c;彻底告别手动抠图时代 【免费下载链接】layerdivider A tool to divide a single illustration into a layered structure. 项目地址: https://gitcode.com/gh_mirrors/la/layerdivider 还在为复杂的图像分层工作烦…

2026/6/27 0:04:03阅读更多 →
Tomcat中X-Frame-Options配置实战:防御点击劫持的四种方法与最佳实践

Tomcat中X-Frame-Options配置实战:防御点击劫持的四种方法与最佳实践

1. 项目概述&#xff1a;为什么X-Frame-Options是Web安全的“防盗门”&#xff1f;最近在排查一个老项目的安全审计报告时&#xff0c;又被提到了“点击劫持”风险&#xff0c;矛头直指缺失的X-Frame-Options响应头。这已经不是第一次了&#xff0c;很多开发团队&#xff0c;尤…

2026/6/27 0:04:03阅读更多 →