File tree Expand file tree Collapse file tree 5 files changed +101
-0
lines changed Expand file tree Collapse file tree 5 files changed +101
-0
lines changed Original file line number Diff line number Diff line change
1
+ int minimumTotal (vector<vector<int >>& triangle) {
2
+ int len = triangle.size ();
3
+ for (int i = len-2 ; i >= 0 ; --i)
4
+ {
5
+ for (int j = 0 ; j < i+1 ; ++j)
6
+ {
7
+ triangle[i][j] = triangle[i+1 ][j]<triangle[i+1 ][j+1 ] ? triangle[i][j]+triangle[i+1 ][j] : triangle[i][j]+triangle[i+1 ][j+1 ];
8
+ }
9
+ }
10
+
11
+ return triangle[0 ][0 ];
12
+ }
Original file line number Diff line number Diff line change
1
+ int minTimeToType (string word) {
2
+ int len = word.size ();
3
+ int cur = ' a' ;
4
+ int ct = 0 ;
5
+ for (int i = 0 ; i < len; ++i)
6
+ {
7
+ int tmp = abs (word[i]-cur);
8
+ ct += tmp < 26 -tmp ? tmp : 26 -tmp;
9
+ cur = word[i];
10
+ }
11
+
12
+ return ct + len;
13
+ }
Original file line number Diff line number Diff line change
1
+ int largestInteger (int num) {
2
+ string s = to_string (num);
3
+ int len = s.size ();
4
+ int odd[10 ] = {0 };
5
+ int even[10 ] = {0 };
6
+ int nodd = 0 , neven = 0 ;
7
+ for (int i = 0 ; i < len; ++i)
8
+ {
9
+ if ((s[i]-' 0' )%2 == 0 )
10
+ even[neven++] = i;
11
+ else
12
+ odd[nodd++] = i;
13
+ }
14
+
15
+ for (int i = 0 ; i < len; ++i)
16
+ {
17
+ if ((s[i]-' 0' )%2 == 0 )
18
+ {
19
+ for (int j = 0 ; j < neven; ++j)
20
+ {
21
+ if (i < even[j] && s[i] < s[even[j]])
22
+ swap (s[i], s[even[j]]);
23
+ }
24
+ }
25
+ else
26
+ {
27
+ for (int j = 0 ; j < nodd; ++j)
28
+ if (i < odd[j] && s[i] < s[odd[j]])
29
+ swap (s[i], s[odd[j]]);
30
+ }
31
+ }
32
+
33
+ return stoi (s);
34
+ }
Original file line number Diff line number Diff line change
1
+ vector<int > intersection (vector<vector<int >>& nums) {
2
+ int len = nums.size ();
3
+ int arr[1001 ] = {0 };
4
+ for (int i = 0 ; i < len; ++i)
5
+ {
6
+ int sz = nums[i].size ();
7
+ for (int j = 0 ; j < sz; ++j)
8
+ ++arr[nums[i][j]];
9
+ }
10
+
11
+ vector<int > res (1000 , 0 );
12
+ int k = 0 ;
13
+ for (int i = 0 ; i < 1001 ; ++i)
14
+ {
15
+ if (arr[i] == len)
16
+ res[k++] = i;
17
+ }
18
+
19
+
20
+ return vector<int >(res.begin (), res.begin ()+k);
21
+ }
Original file line number Diff line number Diff line change
1
+ int countPrefixes (vector<string>& words, string s) {
2
+ int len = words.size ();
3
+ int lens = s.size ();
4
+ int ct = 0 , j;
5
+ for (int i = 0 ; i < len; ++i)
6
+ {
7
+ int sz = words[i].size ();
8
+ if (sz <= lens)
9
+ {
10
+ for (j = 0 ; j < sz; ++j)
11
+ {
12
+ if (words[i][j] != s[j])
13
+ break ;
14
+ }
15
+ if (j == sz)
16
+ ++ct;
17
+ }
18
+ }
19
+
20
+ return ct;
21
+ }
You can’t perform that action at this time.
0 commit comments