【每日刷题】Day74
🥕个人主页:开敲🍉
🔥所属专栏:每日刷题🍍
🌼文章目录🌼
1. 1394. 找出数组中的幸运数 - 力扣(LeetCode)
2. 1518. 换水问题 - 力扣(LeetCode)
3. 1528. 重新排列字符串 - 力扣(LeetCode)
1. 1394. 找出数组中的幸运数 - 力扣(LeetCode)
//思路:哈希记数+遍历。
int findLucky(int* arr, int arrSize)
{
int ans = -1;
int hash[501] = {0};
for(int i = 0;i<arrSize;i++)
{
hash[arr[i]]+=1;//记数
}
for(int i = 0;i<arrSize;i++)//遍历
{
if(hash[arr[i]]==arr[i])
ans = ans>arr[i]?ans:arr[i];
}
return ans;
}
2. 1518. 换水问题 - 力扣(LeetCode)
//思路:数学。
int numWaterBottles(int numBottles, int numExchange)
{
int ans = numBottles;
int num = numBottles;
while(num/numExchange>0)
{
ans+=num/numExchange;
num = num/numExchange+num%numExchange;//换完后的剩余空瓶
}
return ans;
}
3. 1528. 重新排列字符串 - 力扣(LeetCode)
//思路:哈希。
char* restoreString(char* s, int* indices, int indicesSize)
{
char* ans = (char*)malloc(sizeof(char)*101);
for(int i = 0;i<indicesSize;i++)
{
ans[indices[i]] = s[i];
}
ans[indicesSize] = '\0';
return ans;
}