The question is on https://profound.academy/algorithms-data-structures/becoming-an-influencer-YTq1F3NCkuBYBJJz2dEw
I’m not sure why my solution is incorrect. Leads to ~58% correct answers.
<code>#include <iostream>
#include <vector>
#include <algorithm>
int main()
{
int n{}, t{};
std::cin >> n >> t;
std::vector<std::pair<int, int>> content(n);
for(int i = 0; i < n; ++i)
{
std::cin >> content[i].first >> content[i].second;
}
std::sort(content.begin(), content.end());
int l{ 0 }, r{ 0 }, result{ 0 }, sum{ 0 };
while(r < n)
{
sum += content[r].second;
while(content[r].first - content[l].first > t)
{
sum -= content[l].second;
l++;
}
result = std::max(result, sum);
r++;
}
std::cout << result;
return 0;
}
</code>
<code>#include <iostream>
#include <vector>
#include <algorithm>
int main()
{
int n{}, t{};
std::cin >> n >> t;
std::vector<std::pair<int, int>> content(n);
for(int i = 0; i < n; ++i)
{
std::cin >> content[i].first >> content[i].second;
}
std::sort(content.begin(), content.end());
int l{ 0 }, r{ 0 }, result{ 0 }, sum{ 0 };
while(r < n)
{
sum += content[r].second;
while(content[r].first - content[l].first > t)
{
sum -= content[l].second;
l++;
}
result = std::max(result, sum);
r++;
}
std::cout << result;
return 0;
}
</code>
#include <iostream>
#include <vector>
#include <algorithm>
int main()
{
int n{}, t{};
std::cin >> n >> t;
std::vector<std::pair<int, int>> content(n);
for(int i = 0; i < n; ++i)
{
std::cin >> content[i].first >> content[i].second;
}
std::sort(content.begin(), content.end());
int l{ 0 }, r{ 0 }, result{ 0 }, sum{ 0 };
while(r < n)
{
sum += content[r].second;
while(content[r].first - content[l].first > t)
{
sum -= content[l].second;
l++;
}
result = std::max(result, sum);
r++;
}
std::cout << result;
return 0;
}