⚙️ Задача How Many Numbers Are Smaller Than the Current Number
Для каждого элемента массива посчитать количество элементов меньше и вывести результат в виде массива
Пример
Input: nums = [8,1,2,2,3]
Output: [4,0,1,1,3]
Ограничения
- Значение элемента лежит между значениями 0 и 100
- Длина самого массива не меньше 2-х и не больше 500-а
👉How Many Numbers Are Smaller Than the Current Number (leetcode)
#tasks #middle
Решение
class Solution {
public:
vector smallerNumbersThanCurrent(vector& nums) {
vector ans;
vector nums_count(101);
for (const int num : nums){
++nums_count[num];
}
for (int i = 1; i <= 100; ++i) {
nums_count[i] += nums_count[i — 1];
}
for (const int num : nums) {
ans.push_back(num == 0 ? 0 : nums_count[num — 1]);
}
return ans;
}
};
Для каждого элемента массива посчитать количество элементов меньше и вывести результат в виде массива
Пример
Input: nums = [8,1,2,2,3]
Output: [4,0,1,1,3]
Ограничения
- Значение элемента лежит между значениями 0 и 100
- Длина самого массива не меньше 2-х и не больше 500-а
👉How Many Numbers Are Smaller Than the Current Number (leetcode)
#tasks #middle
Решение
⏰ Задача Minimum Number of Operations to Move All Balls to Each Box (leetcode)
Во входных данных даётся массив, каждый элемент массива это коробка. В коробке может быть шарик. Необходимо посчитать сколько нужно действий чтобы переложить все шарики в одну коробку (минимальное количество), для каждой коробки
Пример 1
Input: boxes = «110»
Output: [1,1,3]
Пример 2
Input: boxes = «001011»
Output: [11,8,5,4,3,4]
👉 Ссылка
#tasks #middle
Решение (brute force)
class Solution {
public:
std::vector minOperations(std::string boxes) {
std::vector result;
for (int i = 0; i < boxes.length(); ++i) {
int count = 0;
for (int j = 0; j < boxes.length(); ++j) {
if (boxes[j] == '1') {
count += std::abs(i — j);
}
}
result.push_back(count);
}
return result;
}
};
Во входных данных даётся массив, каждый элемент массива это коробка. В коробке может быть шарик. Необходимо посчитать сколько нужно действий чтобы переложить все шарики в одну коробку (минимальное количество), для каждой коробки
Пример 1
Input: boxes = «110»
Output: [1,1,3]
Пример 2
Input: boxes = «001011»
Output: [11,8,5,4,3,4]
👉 Ссылка
#tasks #middle
Решение (brute force)