Skip to content

Commit 384f316

Browse files
committed
5 problems solved.
1 parent f7a2ebf commit 384f316

File tree

5 files changed

+145
-0
lines changed

5 files changed

+145
-0
lines changed

src/2729.cpp

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
bool isFascinating(int n) {
2+
if (n > 333)
3+
return false;
4+
string s1 = to_string(n);
5+
string s2 = to_string(n*2);
6+
string s3 = to_string(n*3);
7+
8+
int arr[11] = {0};
9+
for (int i = 0; i < 3; ++i)
10+
{
11+
arr[s1[i]-'0']++;
12+
arr[s2[i]-'0']++;
13+
arr[s3[i]-'0']++;
14+
if (arr[s1[i]-'0'] > 1 || arr[s2[i]-'0'] > 1 || arr[s3[i]-'0'] > 1
15+
|| s1[i]-'0' == 0 || s2[i]-'0' == 0 || s3[i]-'0' == 0)
16+
return false;
17+
}
18+
19+
return true;
20+
}

src/2733.cpp

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
int findNonMinOrMax(vector<int>& nums) {
2+
int len = nums.size();
3+
if (len <= 2)
4+
return -1;
5+
6+
int minval = 101, maxval = 0;
7+
int ct = 0;
8+
int res = 0;
9+
10+
for (int i = 0; i < len; ++i)
11+
{
12+
if (nums[i] < minval)
13+
{
14+
if (minval != 101)
15+
{
16+
++ct;
17+
if (ct == 2)
18+
{
19+
res = minval;
20+
break;
21+
}
22+
}
23+
minval = nums[i];
24+
}
25+
if (nums[i] > maxval)
26+
{
27+
if (maxval != 0)
28+
{
29+
++ct;
30+
if (ct == 2)
31+
{
32+
res = maxval;
33+
break;
34+
}
35+
}
36+
maxval = nums[i];
37+
}
38+
39+
if (nums[i] != minval && nums[i] != maxval)
40+
{
41+
res = nums[i];
42+
break;
43+
}
44+
}
45+
46+
return res;
47+
}

src/2744.cpp

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
int maximumNumberOfStringPairs(vector<string>& words) {
2+
int len = words.size();
3+
int ct = 0;
4+
vector<int> flag(len, 0);
5+
6+
for (int i = 0; i < len-1; ++i)
7+
{
8+
if (flag[i] == 1)
9+
continue;
10+
for (int j = i+1; j < len; ++j)
11+
{
12+
if (flag[i] == 0)
13+
{
14+
if (words[i][0] == words[j][1] && words[i][1] == words[j][0])
15+
{
16+
++ct;
17+
flag[i] = 1;
18+
flag[j] = 1;
19+
}
20+
}
21+
}
22+
}
23+
24+
return ct;
25+
}

src/2745.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
int longestString(int x, int y, int z) {
2+
int common = x < y ? x : y;
3+
int diff = x > common ? 1 : (y > common ? 1 : 0);
4+
return (common*2 + diff + z) * 2;
5+
}

src/2748.cpp

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
int countBeautifulPairs(vector<int>& nums) {
2+
int len = nums.size();
3+
int ct = 0;
4+
vector<vector<int>> digits(len, {0,0});
5+
6+
for (int i = 0; i != len; ++i)
7+
{
8+
int x = nums[i]%10;
9+
int y = nums[i];
10+
while (y >= 10)
11+
{
12+
y /= 10;
13+
}
14+
digits[i][1] = x;
15+
digits[i][0] = y;
16+
if (x%2 == 0)
17+
digits[i][1] = 2;
18+
if (x%3 == 0)
19+
digits[i][1] = 3;
20+
if (x == 6)
21+
digits[i][1] = 6;
22+
if (y%2 == 0)
23+
digits[i][0] = 2;
24+
if (y%3 == 0)
25+
digits[i][0] = 3;
26+
if (y == 6)
27+
digits[i][0] = 6;
28+
}
29+
30+
for (int i = 0; i < len-1; ++i)
31+
{
32+
for (int j = i+1; j < len; ++j)
33+
{
34+
if ((digits[i][0] == 2 && digits[j][1] == 2) || (digits[i][0] == 2 && digits[j][1] == 6))
35+
;
36+
else if ((digits[i][0] == 3 && digits[j][1] == 3) || (digits[i][0] == 3 && digits[j][1] == 6))
37+
;
38+
else if ((digits[i][0] == 6 && digits[j][1] == 2) || (digits[i][0] == 6 && digits[j][1] == 3) || (digits[i][0] == 6 && digits[j][1] == 6))
39+
;
40+
else if ((digits[i][0] == digits[j][1]) && digits[i][0] != 1)
41+
;
42+
else
43+
++ct;
44+
}
45+
}
46+
47+
return ct;
48+
}

0 commit comments

Comments
 (0)