LeetCode (力扣) 13. Roman to Integer ( C ) - Easy- 暴力解

leetcode打不开-LCPractice:我的LeetCode解决方案 leetcode打不开我几乎完成了 LeetCode 上当前的免费问题。 其中一些问题真的很有趣。 但到目前为止,我的经验是,真正的面试问题通常比 LeetCode 上的问题更有趣、更有意义。 不过,LeetCode 作为一些典型面试问题的“基础”和“工具箱”非常有效。 我可能最终会为他们的新书付钱。 不是因为我想阅读他们的“官方”解决方案。 但仅仅因为我觉得我从这个小网站中受益。 我应该回馈一些东西。 此外,LeetCode 是一个非常好的代码 Kata,适合那些时不时需要一些常规编码练习的人。 当然,为此目的,还有其他网站。 在这里,我以相当随意的顺序总结了一些 LeetCode 问题。 其中一些是我自己的。 他们中的大多数实际上来自其他人,因为坦率地说,我最初的解决方案通常不如他们。 3总和 首先对输入数组进行排序。 然后将位置固定,并将其他指针从数组的固定位置和尾部移向彼此。 然后前进固定位置,再次进行两点搜索。 for fixed from 0 to n-1 { head = fixed + 1 tail = n-1 while (tail > head) { 立即下载

同步发于 JuzerTech 网站,里面有我软、硬件学习的纪录与科技产品开箱,欢迎进去观看。

此题为前一题 LeetCode 12. Integer to Roman 的延伸,这次为给定一个罗马数字转换成阿拉伯数字。

题目与范例如下

Roman numerals are represented by seven different symbols: I, V, X, L, C, D and M.

Symbol Value
I 1
V 5
X 10
L 50
C 100
D 500
M 1000

For example, 2 is written as II in Roman numeral, just two one's added together. 12 is written as XII, which is simply X + II. The number 27 is written as XXVII, which is XX + V + II.

Roman numerals are usually written largest to smallest from left to right. However, the numeral for four is not IIII. Instead, the number four is written as IV. Because the one is before the five we subtract it making four. The same principle applies to the number nine, which is written as IX. There are six instances where subtraction is used:

I can be placed before V (5) and X (10) to make 4 and 9.
X can be placed before L (50) and C (100) to make 40 and 90.
C can be placed before D (500) and M (1000) to make 400 and 900.
Given a roman numeral, convert it to an integer.

Example 1:

Input: s = "III"
Output: 3
Example 2:

Input: s = "IV"
Output: 4
Example 3:

Input: s = "IX"
Output: 9
Example 4:

Input: s = "LVIII"
Output: 58
Explanation: L = 50, V= 5, III = 3.
Example 5:

Input: s = "MCMXCIV"
Output: 1994
Explanation: M = 1000, CM = 900, XC = 90 and IV = 4.

Constraints:

1 <= s.length <= 15
s contains only the characters ('I', 'V', 'X', 'L', 'C', 'D', 'M').
It is guaranteed that s is a valid roman numeral in the range [1, 3999].

 

解题策略为依序拆解,先从前面的 'M' 转换成千,再转换 'CM' , 'CD' 900 和 400,再转换 'D'以此类推。

 

下方为我的代码

int romanToInt(char * s){
    int num = 0;
    for(int i = 0;i<strlen(s);i++){
        if( s[i] == 'M' ){
            num+=1000;
        }
        
        else if( s[i] == 'C' ){
            if(i+1<strlen(s)){
                if( s[i+1] == 'M' ){
                    num+=900;
                    i++;
                }
                else if( s[i+1] == 'D' ){
                    num+=400;
                    i++;
                }
                else
                    num+=100;
            }
            else{
                num+=100;
            }
        }
        else if( s[i] == 'D' )
            num+=500;
        
        else if( s[i] == 'X' ){
            if(i+1<strlen(s)){
                if( s[i+1] == 'C' ){
                    num+=90;
                    i++;
                }
                else if( s[i+1] == 'L' ){
                    num+=40;
                    i++;
                }
                else
                    num+=10;
            }
            else{
                num+=10;
            }
        }
        else if( s[i] == 'L' )
            num+=50;
        
        else if( s[i] == 'I' ){
            if(i+1<strlen(s)){
                if( s[i+1] == 'X' ){
                    num+=9;
                    i++;
                }
                else if( s[i+1] == 'V' ){
                    num+=4;
                    i++;
                }
                else
                    num+=1;
            }
            else{
                num+=1;
            }
        }
        else if( s[i] == 'V' )
            num+=5;
    }
    return num;
}

 

下方为时间与空间之消耗

Runtime: 4 ms, faster than 84.35 % of C online submissions for Roman to Integer.

Memory Usage: 5.8 MB, less than 58.45 % of C online submissions for Roman to Integer.

leetcode无法访问-LeetCode:LeetCode问题和竞赛的解决方案和测试文件 leetcode 无法访问力码 Leetcode 是一个程序员练习编程技巧的网站。 它有超过 1500 个问题并且还在不断增加。 它的高级版本非常受欢迎,因为它有助于为各种组织的面试练习编码。 此 Repo 包含 Leetcode 上各种算法问题的解决方案,以及 LeetCode 上发生的每周竞赛。 力扣版权 根据服务的使用,LeetCode 的问题陈述不能存储在这个存储库中,即使这会很方便。 这是由于版权限制。 这是服务条款中的引用: 用户同意所有内容都是 LeetCode 的唯一和专有财产。 LeetCode 可以将所有内容用于任何目的,包括用于商业或促销用途,而不受限制或向用户提供补偿。 用户同意不复制、重新分发、发布或以其他方式利用任何侵犯知识产权的内容。 用户可以通过服务访问或使用第三方服务、产品、资源、内容或信息,包括但不限于产品和服务(“第三方材料”)。 用户承认对用户访问或使用任何此类第三方材料所产生的全部责任并承担所有风险,LeetCode 不承担用户因访问或使用此类第三方材料而可能招致的任何责任。 用户承认并同意,LeetCode: (a) 不对此类第三方材料或此类 立即下载

相关推荐

7-15 估值一亿的AI核心代码

函数封装,含一个字符串中的所有的某个字串全部替换成另一个的函数,还有判断是否独立的函数以上图片来自新浪微博。!

weixin_73529240的博客 601

力扣网页端无法进入(问题已解决)

力扣网页端无法进入(问题已解决)

热爱C++和golang的学生 6758

【中英双语】Illumina测序原理详解 | 边合成边测序/Sequencing by Synthesis

很多朋友们问我视频讲解时用的笔记可不可以分享,那当然必须是可以呐!但我当时其实没有好好记录,只是打了个草稿就开讲啦!既然大家有需求,俺就重新整理了一下,希望可以帮到大家!

weixin_43843918的博客 7872

【解决leecode打不开的问题】使用chrome浏览器和其他浏览器均打不开leecode

问题描述:能进入leetcode力扣官网但是对某些栏目加载不出来,比如学习栏目能完成加载、题库栏目不能加载。

糖炒栗子 5934

如何读懂CiteSpace图谱?科研小白必看的节点颜色/年轮/聚类解读手册

本文详细解析CiteSpace图谱的核心视觉元素,包括节点颜色、年轮和聚类标识,帮助科研人员准确解读数据分析结果。通过生物医学案例展示如何从图谱中识别关键文献和研究趋势,提供五步系统解读法和常见错误规避策略,助力科研小白快速掌握文献计量分析技巧。

weixin_29179311的博客 316

OpenCV计算机视觉实战(11)——边缘检测详解

在本节中,我们系统介绍了三大经典边缘检测算子,包括 Sobel 算子:一阶导数平衡了噪声抑制与边缘提取,结合方向信息可用于纹理分析与车道检测;Laplacian 算子:二阶导数对微小亮度突变尤为敏感,配合零交叉和细化技术,可精确捕捉任意方向的细节边缘;Canny 算法:集成多阶段处理与双阈值策略,通过多尺度融合与自适应阈值优化,达到抗噪与细节兼顾的卓越效果。

qq_30167691的博客 4375

【已解决】力扣打不开

唯独力扣打不开,可能是DNS解析错误。1.访问国内其他网站都没有问题。4.连接同网络的其他主机能打开。2.访问github也能成功。并在最下边添加对应的host。==》自己网络配置问题。3.wifi没有问题。

moteandsunlight的博客 4593

69、SAP数据库归档重做日志备份策略与工具详解

本文详细解析了SAP数据库归档重做日志备份的重要性及策略,介绍了SAP提供的备份工具brarchive及其配置和使用方法,探讨了BRBACKUP与BRARCHIVE的联合运行、一致在线备份、备用数据库备份场景以及备份策略的综合应用与优化。此外,还分析了备份过程中常见问题的解决方法、备份监控与评估流程、与第三方备份解决方案的集成方式,以及未来备份技术的发展趋势和应对策略。通过合理运用这些策略和工具,可以有效保障SAP数据库的安全性和可恢复性。

peace的博客 135

力扣网站经常卡(2025/3/10)

很早之前就感觉力扣很卡,但是以为很正常,今天偶然感觉很不对劲,其他网站都能打开,就力扣打不开,很烦人,这里还是记录一下(截止2025/3/10方法有效)。

do better. 3983

踩坑2周总结:Python+YOLO26搭建工业级多路视频分析应用,从单路卡顿到16路4K稳跑30FPS

本文分享了工业级多路视频分析系统的实战经验,针对智慧物流园区的车辆违停和人员安全监测需求,提出了一套完整的解决方案。作者通过踩坑实践,总结出多路视频分析的四大核心痛点:视频流解码瓶颈、推理调度混乱、内存占用爆炸和部署兼容性差。 文章详细介绍了技术选型方案,推荐使用FFmpeg+PyAV进行硬件加速解码、YOLO26+TensorRT INT8量化推理、单进程多线程的生产者-消费者架构,以及内存池复用等技术组合。该方案在RTX 4070 Ti上实现了16路4K视频30FPS稳定运行,GPU利用率达85%以上,

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 955

嵌入式系统开发笔记112:通过有人云测试MQTT

项目中使用到“有人”公司的WH-LTE-7S0模块,本文讲解通过有人云进行MQTT测试的方法。

snmplink的博客 998

力扣网页PC端无法进入(问题得到解决)

最近发现在不同地方,使用不同WiFi时,有些地点出现力扣网页PC端无法加载的问题。 按照网上方法进行了调试,发现帖子推荐改hosts文件,将自己电脑https://leetcode-cn.com/的对应IP加入hosts文件。此种方法,试了后,并没有解决问题。 ...

星星之火 可以燎原 1万+

2020年大连理工大学《单片机原理及应用》期末试卷

2020年大连理工大学《单片机原理及应用》期末试卷 此试卷为大连理工大学2020年《单片机原理及应用》期末试卷; 大连理工大学2020年《单片机原理及应用》期末试卷; 大连理工大学2020年《单片机原理及应用》期末试卷。 ...

无名何许人的博客 1479

力扣的题库突然打不开的解决办法

力扣打开很慢或者题目根本就打不开的解决方法

Jireen的博客 7784

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

力扣、github网站登不上

可能原因:DNS解析错误。 mac上解决方案: 第一种 在hosts上刷新DNS缓存。 1.在ipaddress.com搜索力扣当前ip地址。 2.打开finder,shift+cmd+G,搜索etc/hosts 取消注释#,添加力扣ip地址和网址。 第二种 修改电脑DNS服务器 1.打开设置->打开连接的网络->高级设置 ->DNS选项->添加DNS服务器->若查找力扣网址,首选233.5.5.5服务器 ...

weixin_48329362的博客 2929

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

解决力扣等国外网站打不开问题

1. 进入站长之家在线工具,找到DNS查询(http://tool.chinaz.com/dns/),输入待解决问题的域名,如图:

k916631305的博客 7968

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

力扣打不开,通过修改hosts文件来访问

力扣刷新失败,提交代码提示未知异常 问题描述 最近几天我登录https://leetcode-cn.com/老是显示网络连接失败 刷新多次才偶尔能打开,访问别的网站都没有问题 原因分析 能访问别的网站说明网络没有问题,唯独访问该网址打不开,可能的原因是DNS解析出错 DNS解析:(百度百科解释) 域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务。IP地址是网络上...

单调枯燥的CC的博客 1万+

LeetCode使用简介(leetcode中国-力扣)

没有入过英文版官网的坑,现在中文版官网也出来许久并且已经比较完善,题库也是通的,现在就直接使用LeetCode中国。 经过测试,到2019.11账号还是不通的,使用在中文版注册的账号密码是无法登陆英文版的,都绑定并使用github登录得到的不同的账号。能查到的18年的关于leetcode账号数据同步到leetcode中国的帖子,因为18年leetcode中国才刚刚出现还有很多不完善的地方,不太好使...

Sophia_fez的博客 1万+

LeetCode (力扣) 10. Regular Expression Matching ( C ) - Hard - 递归法

同步发于JuzerTech网站,里面有我软、硬件学习的纪录与科技产品开箱,欢迎进去观看。

JuzerTech的博客 737

LeetCode (力扣) 22. Generate Parentheses (C) - Medium

同步发于JuzerTech网站,里面有我软、硬件学习的纪录与科技产品开箱,欢迎进去观看。 题目为给定一个数字 n ,列出 n 组 ( ) 的所有排列方式。 题目与范例如下 Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses. Example 1: Input: n = 3 Output: ["((()))","(()())","(())()...

JuzerTech的博客 369

LeetCode 1. Two Sum C 语言解题

同步发于 JuzerTech 网站,里面有我软、硬件学习的纪录与科技产品开箱,欢迎进去观看。 题目为输入一串数列,要寻找两个数字相加与目标值相同的数,并回传它们的位置。 原文题目如下 Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input woul

JuzerTech的博客 350

LeetCode (力扣) 20. Valid Parentheses (C) - Easy

同步发于JuzerTech网站,里面有我软、硬件学习的纪录与科技产品开箱,欢迎进去观看。

JuzerTech的博客 293

LeetCode (力扣) 23. Merge k Sorted Lists (C) - Hard

同步发于JuzerTech网站,里面有我软、硬件学习的纪录与科技产品开箱,欢迎进去观看。 这题是 LeetCode 21. Merge Two Sorted Lists 的延伸,把两个链表 ( Linked List ) 增加到多个。 把多个链表 ( Linked List ) 依照大小排序,串接在一起,并回传串接完的 Linked List。 题目与范例如下 You are given an array of k linked-lists lists, each linked-list i..

JuzerTech的博客 255

LeetCode (力扣) 12. Integer to Roman ( C ) - Medium - 暴力解

同步发于JuzerTech网站,里面有我软、硬件学习的纪录与科技产品开箱,欢迎进去观看。

JuzerTech的博客 244
上一篇: LeetCode (力扣) 12. Integer to Roman ( C ) - Medium - 暴力解
下一篇: LeetCode (力扣) 14. Longest Common Prefix (C) - Easy
JuzerTech
博客等级 码龄6年 7粉丝 34原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值