This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
// pec.cpp : This file contains the 'main' function. Program execution begins and ends there.
//
#include <iostream>
#include <vector>
#include <algorithm>
#include <queue>
#include <iomanip>
#include <set>
using namespace std;
int main()
{
int n;
int m;
cin >> n;
cin >> m;
string s;
cin >> s;
vector<int>v(n);
for (int i = 0; i < n; i++)
{
if (s[i] == 'T')
{
v[i] = 2;
}
else if (s[i] == 'W')
{
v[i] = 1;
}
}
vector<int>prefix(n+1);
prefix[0] = 0;
for (int i = 1; i < n+1; i++)
{
prefix[i] = prefix[i - 1] + v[i-1];
}
/*for (int i = 0; i < n; i++)
{
cout << prefix[i];
if (i != n - 1)
{
cout << ' ';
}
}
cout << endl;*/
vector<int>frek(200037,-1);
for (int i = 0; i < n + 1; i++)
{
if (frek[prefix[i]] == -1)
{
frek[prefix[i]] = i;
}
}
while (m--)
{
int k;
cin >> k;
int l = -1;
int r = -1;
for (int i = 0; i < n; i++)
{
/*int index = lower_bound(prefix.begin() + i, prefix.end(), k + prefix[i]) - prefix.begin();
if (index != prefix.size())
{
if (prefix[index] - prefix[i] == k)
{
l = i;
r = index;
break;
}
}*/
if (frek[prefix[i] + k] != -1)
{
l = i;
r = frek[prefix[i] + k];
break;
}
}
if (l != -1 && r != -1)
{
cout << l + 1 << ' ';
cout << r << endl;
}
else
{
cout << "NIE" << endl;
}
}
return 0;
//std::cout << "Hello World!\n";
}
// Run program: Ctrl + F5 or Debug > Start Without Debugging menu
// Debug program: F5 or Debug > Start Debugging menu
// Tips for Getting Started:
// 1. Use the Solution Explorer window to add/manage files
// 2. Use the Team Explorer window to connect to source control
// 3. Use the Output window to see build output and other messages
// 4. Use the Error List window to view errors
// 5. Go to Project > Add New Item to create new code files, or Project > Add Existing Item to add existing code files to the project
// 6. In the future, to open this project again, go to File > Open > Project and select the .sln file
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |