ACM-基本题
Kang_TJU
Talk is cheap!
展开
-
jobdu1021字符统计
问题看下面的问题: [ jobdu-1021] 题目描述: 题目描述: 统计一个给定字符串中指定的字符出现的次数。 输入: 测试输入包含若干测试用例,每个测试用例包含2行,第1行为一个长度不超过5的字符串,第2行为一个长度不超过80的字符串。注意这里的字符串包含空格,即空格也可能是要求被统计的字符之一。当读到’#’时输入结束,相应的结果不要输出。 输原创 2016-09-07 23:00:03 · 357 阅读 · 0 评论 -
leetcode-492-Construct the Rectangle
问题题目:[leetcode-492]思路找质因数,如果平方根不行,从较大的一侧开始找即可。代码class Solution {public: vector<int> constructRectangle(int area) { std::vector<int> ret; int sqrt = std::sqrt(area); if(sqrt*原创 2017-01-29 23:35:58 · 418 阅读 · 0 评论 -
leetcode-461-Hamming Distance
问题题目:[leetcode-461]思路由于题目限制了整数范围,所以肯定是4个字节。那么内存中表示就是4个字节。 所以,把十进制数字转换为二进制之后,进行比较即可。代码class Solution {public: int hammingDistance(int x, int y) { std::string left = decimal2binary(x);原创 2016-12-29 19:31:47 · 368 阅读 · 0 评论 -
leetcode-125-Valid Palindrome 顺序表
问题题目:[leetcode-125]思路顺序表这块的思路,但是这个题目要忽略标点。并且不区分大小写,数字字母。class Solution {public: bool isPalindrome(string s) { if(s == "") return true; std::string ret; unsigned原创 2016-12-15 21:59:01 · 542 阅读 · 0 评论 -
leetcode-229- Majority Element II
问题题目:[leetcode-229]思路参考[Major Element] 都是采用moore’s voting algorithm,只不过第一个问题是一定存在。但是本题不存在,投票完了之后需要验证。写代码需要注意一点:避免m和n重复的情形。 还有循环判断的顺序不能变!!!代码class Solution {public: vector<int> majorityElement(ve原创 2017-01-18 15:38:51 · 306 阅读 · 0 评论 -
leetcode-171-Excel Sheet Column Number
问题题目:[leetcode-171]思路二十六进制转换为十进制,按权展开即可。代码class Solution {public: int titleToNumber(string s) { int sz = s.size(); int ret = 0; for( int i = sz - 1, base = 1; i >= 0; --i, b原创 2017-01-18 12:22:34 · 362 阅读 · 0 评论 -
leetcode-168-Excel Sheet Column Title
问题题目:[leetcode-168]思路刚上来已知每反应过来,做题的时候需要注意一点。在分析问题的时候,如果不能直接解决。需要考虑转化问题,即问题的本质是什么。这个题目,本质就是进制转换。想到这问题就解决了。注意:转换的时候需要对mod修正。代码class Solution {public: string convertToTitle(int n) { std::stri原创 2017-01-17 15:23:37 · 510 阅读 · 0 评论 -
leetcode-463- Island Perimeter
题目题目:[Island Perimeter]思路指定边界规则:小心点是避免重复 对于任何一个点应该是判断四个方向: 为0,有一条 越界,有一条代码class Solution {public: int islandPerimeter(vector<vector<int>>& grid) { int row = grid.size(); if(!row原创 2016-12-30 09:27:27 · 407 阅读 · 0 评论 -
leetcode-448- Find All Numbers Disappeared in an Array
问题题目:[leetcode-448]思路设置标志数组,未出现的不置位。代码class Solution {public: vector<int> findDisappearedNumbers(vector<int>& nums) { std::vector<int> ret; int sz = nums.size(); if(!sz)原创 2016-12-29 19:50:10 · 487 阅读 · 0 评论 -
leetcode-412- Fizz Buzz
问题题目:[leetcode-412]思路枚举判断。代码/*3 : Fizz5:Buzz3&&5FizzBuzz*/class Solution {public: vector<string> fizzBuzz(int n) { std::vector<std::string> ret; for( int i = 1; i <= n; ++i )原创 2016-12-29 19:40:43 · 456 阅读 · 0 评论 -
leetcode-344- Reverse String
问题题目:[Reverse String]思路回文。代码class Solution {public: string reverseString(string s) { return std::string( s.rbegin(), s.rend() ); }};原创 2016-12-16 18:09:22 · 401 阅读 · 0 评论 -
leetcode-38-Count and Say 基础题
问题题目:[leetcode-38]思路1, 11, 21, 1211, 111221, …1 is read off as “one 1” or 11. 11 is read off as “two 1s” or 21. 21 is read off as “one 2, then one 1” or 1211.从样本来看,每一组的数字是在上一组数字的基础上获得的,所以原问题和子问题有关联,考原创 2016-12-21 22:36:10 · 458 阅读 · 0 评论 -
回文字符串 基础题
问题题目:[回文字符串]思路两种思路:判断对称元素是否相等判断源字符串与逆序字符串是否相等代码#include <iostream>#include <string>#include <algorithm>bool is_palindrome(const std::string& s);int main( void ){ std::string s; while( st原创 2016-11-29 15:23:55 · 517 阅读 · 0 评论 -
leetcode-118-Pascal's Triangle 基础题
问题题目:[leetcode-118]思路基础题,杨辉三角。代码class Solution {public: vector<vector<int>> generate(int numRows) { vector< vector<int> > ret; for( int i = 0; i < numRows; ++i ) {原创 2016-11-02 10:37:47 · 470 阅读 · 0 评论 -
leetcode-119-基础题
问题题目:leetcode-119思路朴素的思路就是生成前indexNum行即可。代码class Solution {public: vector<int> getRow(int rowIndex) { std::vector< std::vector<int> > triangle( rowIndex + 1, std::vector<int>( rowIndex + 1原创 2016-12-13 22:18:22 · 630 阅读 · 0 评论