Skip to content

Commit a262417

Browse files
committed
8 problems solved.
1 parent b625037 commit a262417

File tree

8 files changed

+163
-0
lines changed

8 files changed

+163
-0
lines changed

src/1897.cpp

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
bool makeEqual(vector<string>& words) {
2+
int len = words.size();
3+
int num[26] = {0};
4+
for (int i = 0; i < len; ++i)
5+
{
6+
int sz = words[i].size();
7+
for (int j = 0; j < sz; ++j)
8+
{
9+
++num[words[i][j]-'a'];
10+
}
11+
}
12+
13+
for (int i = 0; i < 26; ++i)
14+
{
15+
if (num[i]%len != 0)
16+
return false;
17+
}
18+
19+
return true;
20+
}

src/1945.cpp

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
int getLucky(string s, int k) {
2+
const int val[26] = {1,2,3,4,5,6,7,8,9,
3+
1,2,3,4,5,6,7,8,9,10,
4+
2,3,4,5,6,7,8};
5+
int len = s.size();
6+
int sum = 0;
7+
for (int i = 0; i < len; ++i)
8+
{
9+
sum += val[s[i]-'a'];
10+
}
11+
if (sum < 10)
12+
return sum;
13+
14+
while (--k)
15+
{
16+
int tmp = 0;
17+
while (sum > 0)
18+
{
19+
tmp += sum%10;
20+
sum /= 10;
21+
}
22+
23+
sum = tmp;
24+
if (sum < 10)
25+
break;
26+
}
27+
28+
return sum;
29+
}

src/1952.cpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
bool isThree(int n) {
2+
int num[25] = {2,3,5,7,11,13,17,19,23,29,31,
3+
37,41,43,47,53,59,61,67,71,73,
4+
79,83,89,97};
5+
for (int i = 0; i < 25; ++i)
6+
{
7+
if (num[i]*num[i] == n)
8+
return true;
9+
}
10+
11+
return false;
12+
}

src/1957.cpp

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
string makeFancyString(string s) {
2+
int len = s.size();
3+
if (len < 3)
4+
return s;
5+
6+
stringstream ss;
7+
int ct = 1;
8+
int lastchar = s[0];
9+
int i = 1;
10+
ss << s[0];
11+
while (i < len)
12+
{
13+
if (s[i] == lastchar)
14+
{
15+
++ct;
16+
if (ct < 3)
17+
ss << s[i];
18+
++i;
19+
}
20+
else
21+
{
22+
ct = 1;
23+
lastchar = s[i];
24+
ss << s[i];
25+
++i;
26+
}
27+
}
28+
29+
return ss.str();
30+
}

src/1961.cpp

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

src/2027.cpp

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
int minimumMoves(string s) {
2+
int len = s.size();
3+
int i = 0;
4+
int ct = 0;
5+
while (i < len)
6+
{
7+
if (s[i] == 'O')
8+
++i;
9+
else
10+
{
11+
++ct;
12+
i += 3;
13+
}
14+
}
15+
16+
return ct;
17+
}

src/2053.cpp

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
string kthDistinct(vector<string>& arr, int k) {
2+
map<string, int> mp;
3+
int len = arr.size();
4+
for (int i = 0; i < len; ++i)
5+
mp[arr[i]]++;
6+
7+
int ct = 1;
8+
for (int i = 0; i < len; ++i)
9+
{
10+
if (mp[arr[i]] == 1)
11+
{
12+
if (ct == k)
13+
return arr[i];
14+
else
15+
++ct;
16+
}
17+
}
18+
19+
return "";
20+
}

src/2057.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
int smallestEqual(vector<int>& nums) {
2+
int len = nums.size();
3+
for (int i = 0; i < len; ++i)
4+
{
5+
if (i%10 == nums[i])
6+
return i;
7+
}
8+
9+
return -1;
10+
}

0 commit comments

Comments
 (0)