leetcode每日刷题计划-简单篇day2
今天数模比赛爆肝&操作系统大作业
脖子疼orz先把题过了保证flag不倒。。个别细节回头看吧
Num 13 罗马数字转整数 Roman to Integer
一遍提交过,开始编译出了点问题
具体:最开始忘了if后面的(a+1)需要括号
strlen(s)不可用,这个回头看一下
s.length()是可用的
不知道有没有简单代码,困到懵逼先码
class Solution {
public:
bool pd=false;
int num(char*a)
{
pd=false;//在true的时候减法
if(*a=='I')
{
if((a+)!=NULL && *(a+)=='V')
{
pd=true;
return ;
}
//if((a+1)!=NULL && *(a+1))=='X')
if((a+)!=NULL && *(a+)=='X')
{
pd=true;
return ;
}
else
return ;
}
else if(*a=='X')
{
if((a+)!=NULL && *(a+)=='L')
//if(a+1!=NULL && *(a+1))=='L')
{
pd=true;
return ;
}
if((a+)!=NULL && *(a+)=='C')
//if(a+1!=NULL && *(a+1))=='C')
{
pd=true;
return ;
}
else
return ;
}
else if(*a=='C')
{
if((a+)!=NULL && *(a+)=='D')
//if(a+1!=NULL && *(a+1))=='D')
{
pd=true;
return ;
}
if((a+)!=NULL && *(a+)=='M')
//if(a+1!=NULL && *(a+1))=='M')
{
pd=true;
return ;
}
else
return ;
}
else if(*a=='V')
return ;
else if(*a=='L')
return ;
else if(*a=='D')
return ;
else if(*a=='M')
return ;
cout<<"en?"<<endl;
return -;
}
int romanToInt(string s) {
pd=false;
int ans=;
int len=s.length();
for(int i=;i<len;i++)
{
if (pd==true)
{
pd=false;
continue;
}
char *a=&s[i];
ans=ans+num(a);
}
return ans;
}
};
Num 20 有效的括号 Valid Parentheses
题非常简单,一遍过(开始忘了count++,无限循环了不过我没交自己发现的,算过吧)
注意一下stl里面的stack和自己手写习惯的不太一样
pop是void返回
用top完成读取以后pop删除
刚开始括号左右弄反了
class Solution {
public:
bool isValid(string s) {
stack <int> arr;
int count=;
int pd=true;
while(s[count]!='\0')
{
if(s[count]=='(')
{
arr.push();
}
else if(s[count]=='{')
{
arr.push();
}
else if(s[count]=='[')
{
arr.push();
}
else if(s[count]==')')
{
if(arr.empty())
return false;
int a=arr.top();
arr.pop();
if(a!=)
return false;
}
else if(s[count]=='}')
{
if(arr.empty())
return false;
int a=arr.top();
arr.pop();
if(a!=)
return false;
}
else if(s[count]==']')
{
if(arr.empty())
return false;
int a=arr.top();
arr.pop();
if(a!=)
return false;
}
count++;
}
if(!arr.empty())
return false;
return true;
}
};
比较顺利,今天跳了一个用vector的,一周之内补上~
leetcode每日刷题计划-简单篇day2的更多相关文章
- leetcode每日刷题计划-简单篇day5
刷题成习惯以后感觉挺好的 Num 27 移除元素 Remove Element 跟那个排序去掉相同的一样,len标记然后新的不重复的直接放到len class Solution { public: i ...
- leetcode每日刷题计划-简单篇day3
收到swe提前批面试hhh算是ep挂了的后续 努力刷题呀争取今年冲进去! Num 21 合并两个有序链表 Merge Two Sorted Lists 注意新开的链表用来输出结果的是ListNode ...
- leetcode每日刷题计划-简单篇day1
orzorz开始刷题 争取坚持每周平均下来简单题一天能做两道题吧 非常简单的题奇奇怪怪的错误orz越不做越菜 Num 7 整数反转 Reverse Integer 刚开始多给了一个变量来回折腾占地方, ...
- leetcode每日刷题计划-简单篇day12
Num 125 验证回文串 Valid Palindrome 非常有收货的一道题嘻嘻嘻,本来是考试期间划水挑的题,坑点有点多 第一个是注意对temp1和temp2中途更新的判断 第二个是字符串频繁的作 ...
- leetcode每日刷题计划-简单篇day10
跳题,不熟悉的留到周末再做. 保持冷静,不信画饼. num 100 相同的树 Same Tree 做法可能不是特别简洁,注意一下.最后判断完子树以后,要确定根的数值是一样的 然后在isleaf的判定先 ...
- leetcode每日刷题计划-简单篇day9
Num 38 报数 Count and Say 题意读起来比较费劲..看懂了题还是不难的 注意最后的长度是sz的长度,开始写错写的len 在下次计算的时候len要更新下 说明 直接让char和int进 ...
- leetcode每日刷题计划-简单篇day6
突发奇想&胡思乱想的一天 银行家算法证明错了并挂在黑板上的可怜希希 Num 53 最大子序和 Maximum Subarray O(n)的算法实现了,分治法有空补 class Solution ...
- leetcode每日刷题计划-简单篇day13
Num 169 先码,回头再说,摩尔算法... tle了 class Solution { public: int majorityElement(vector<int>& num ...
- leetcode每日刷题计划-简单篇day11
Num 121 买卖股票的最佳时期 Best Time to Buy and Sell Stock class Solution { public: int maxProfit(vector<i ...
随机推荐
- Python语言:下载上证股票数据程序
from urllib.request import urlretrieve f = open('SHA.csv', 'r')for line in f: data = line.split(',') ...
- Verilog HDL按位操作符与归约操作符的区别
sdaPipe <= {`DEB_I2C_LEN{1'b1}}; {{}} 为一种赋值运算符,将一个表达式放入双重花括号中,而复制因子放在第一层花括号中,用来指定复制的次数. { }表示拼接,{ ...
- SVN 的搭建及使用(一)下载和搭建SVN服务器
(本文是从博客园上的文章改编而来,其中有些关于版本问题的截图是直接引用原文的,与当前版本有可能不同) Subversion是优秀的版本控制工具,其具体的的优点和详细介绍,这里就不再多说. 首先来下载和 ...
- Java 8 中常用的函数式接口
函数式接口 函数描述符 Predicate<T> T->boolean Consumer<T> T->void Function<T, R> T-> ...
- jmeter压测、操作数据库、分布式linux下运行、webservice接口测试、charles抓包
一.jmeter压测 在线程组中设置好,然后添加http请求,t添加聚合报告查看压力测试结果,如图: 一般压测时间10-15分钟,如果是稳定性测试,一般n*12小时,这些并发用户一直在请求. tps: ...
- oracle左关联+号表示方式
1.emp表和dept表 2.emp表中empno为8888的这条数据,没有部门编号,以emp表为主表,左关联查询部门信息sql语句如下: select * from emp e,dept d whe ...
- java-Redis集合
引用包:jedis-3.0.1.jar.commons-pool2-2.6.0.jar 一.从Redis集合中实时获取数据: 连接Redis import redis.clients.jedis.Je ...
- py-day3 python 全局变量和局部变量
# 全局变量 如果函数的内容无 global关键字,优先读取全局变量,无法对全局变量重新赋值, name = 'mj' def change_name(): print('change_name',n ...
- ubuntu python3和python2切换脚本
最近在ubuntu上开发较多,有些工具只能在python2运行,而开发又是在python3上做的开发,所以写个脚本方便在python2和python3之间切换. 切换成python2的文件usepy2 ...
- Intellij中部署Tomcat(详细版本-介绍了部署完之后的详细路径)
https://blog.csdn.net/HughGilbert/article/details/56424137 要点如下: 1. CATALINA_HOME即Tomcat的安装目录 2. CAT ...