RangeAdditionII、ConstructtheRectangle、ExcelSheetColumnNumber
2017-12-10 14:46
387 查看
RangeAdditionII、ConstructtheRectangle、ExcelSheetColumnNumber
ExcelSheetColumnNumber
Related to question Excel Sheet Column TitleGiven a column title as appear in an Excel sheet, return its corresponding column number.
For example:
A -> 1 B -> 2 C -> 3 ... Z -> 26 AA -> 27 AB -> 28
/* * 171. Excel Sheet Column Number */ int titleToNumber(string s) { int maxSize=s.size(); int result=0; for(auto ite=s.begin();ite!=s.end();++ite) { float p=maxSize-(ite-s.begin()+1); double num=pow(26,p); int temp=*ite-'A'+1; result+=temp*num; } cout<<result; int pow=1; result=0; for(int i=1;i<=s.size();++i) { int temp=*(s.end()-i)-'A'+1; result+=temp*pow; pow*=26; } cout<<result; return result; }
Construct the Rectangle
For a web developer, it is very important to know how to design a web page’s size. So, given a specific rectangular web page’s area, your job by now is to design a rectangular web page, whose length L and width W satisfy the following requirements:The area of the rectangular web page you designed must equal to the given target area.
The width W should not be larger than the length L, which means L >= W.
The difference between length L and width W should be as small as possible.
You need to output the length L and the width W of the web page you designed in sequence.
Example:
Input: 4
Output: [2, 2]
Explanation: The target area is 4, and all the possible ways to construct it are [1,4], [2,2], [4,1].
But according to requirement 2, [1,4] is illegal; according to requirement 3, [4,1] is not optimal compared to [2,2]. So the length L is 2, and the width W is 2.
Note:
The given area won’t exceed 10,000,000 and is a positive integer
The web page’s width and length you designed must be positive integers.
/* * 492. Construct the Rectangle */ vector<int> constructRectangle(int area) { int length=0; int width=0; int temp=sqrtf(area); for(int i=temp;i>0;--i) { if(area%i==0) { length=area/i; width=i; break; } } vector<int> result{}; result.push_back(length); result.push_back(width); for (auto item=result.begin(); item !=result.end() ; ++item) { cout<<*item<<ends; } return result; }
RangeAdditionII
Given an m * n matrix M initialized with all 0’s and several update operations.Operations are represented by a 2D array, and each operation is represented by an array with two positive integers a and b, which means M[i][j] should be added by one for all 0 <= i < a and 0 <= j < b.
You need to count and return the number of maximum integers in the matrix after performing all the operations.
Example 1:
Input:
m = 3, n = 3
operations = [[2,2],[3,3]]
Output: 4
Explanation:
Initially, M =
[[0, 0, 0],
[0, 0, 0],
[0, 0, 0]]
After performing [2,2], M =
[[1, 1, 0],
[1, 1, 0],
[0, 0, 0]]
After performing [3,3], M =
[[2, 2, 1],
[2, 2, 1],
[1, 1, 1]]
So the maximum integer in M is 2, and there are four of it in M. So return 4.
/* * 598.RangeAdditionII */ int maxCount(int m, int n, vector<vector<int>>& ops) { if(ops.size()==0) return m*n; for(int i=0;i<ops.size();++i) { vector<int > row=*(ops.begin()+i); if(row[0]<m) m=row[0]; if(row[1]<n) n=row[1]; } cout<<n*m; return n*m; }
相关文章推荐
- LeetCode 171/168 Excel Sheet Column Number/Title
- Excel Sheet Column Title&&Excel Sheet Column Number
- LeetCode 171 Excel Sheet Column Number
- LeetCode之171. Excel Sheet Column Number
- leetcode之Excel Sheet Column Number
- Math-171-Excel Sheet Column Number
- leetcode171: Excel Sheet Column Number
- [171] Excel Sheet Column Number
- leetcode刷题日记——Excel Sheet Column Number
- 171. Excel Sheet Column Number
- Excel Sheet Column Number
- 【LeetCode】(171)Excel Sheet Column Number(Easy)
- [Leetcode]Excel Sheet Column Number
- leetcode 之 Excel Sheet Column Number
- Excel Sheet Column Number (leetcode 171)
- Excel Sheet Column Number
- 171. Excel Sheet Column Number
- [leetcode]171. Excel Sheet Column Number
- leetcode Excel Sheet Column Number
- LeetCode Javascript实现 100. Same Tree 171. Excel Sheet Column Number