Submission #417687

# Submission time Handle Problem Language Result Execution time Memory
417687 2021-06-04T06:39:43 Z 장태환(#7548) Parking Problem (innopolis2021_final_A) C++17
23 / 100
93 ms 884 KB
#include <bits/stdc++.h>
using namespace std;
int main()
{
    int T;
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cin >> T;
    while(T--)
    {
        string a,b;
        cin >> a >> b ;
        int i;
        int c=0;
        priority_queue<int>oo;
        priority_queue<int>ee;
        for(i=0;i<a.size();i++)
        {
            if(a[i]=='X')
            {
                if(c>1)
                {
                    if(c%2)
                        ee.push(c-1);
                    else
                        oo.push(c-1);
                }
                c=0;
            }
            else
                c++;
        }
        if(c>1)
        {
            if(c%2)
                ee.push(c-1);
            else
                oo.push(c-1);
        }
        int s=0,en=b.size()+1;
        while(s!=en)
        {
            priority_queue<int>o;
            priority_queue<int>e;
            o=oo;
            e=ee;
            int m=(s+en)/2;
            int three=0,two=0;
            for(i=0;i<m;i++)
            {
                if(b[i]=='M')
                    two++;
                else
                    three++;
            }
            for(i=0;i<three+two;i++)
            {
                if(i>=three)
            {
                if(e.size())
                {
                    int c=e.top()-2;
                    e.pop();
                      if(c>0)
                        e.push(c);
                }
                else if(o.size())
                {
                 int c=o.top()-2;

                    o.pop();
                     if(c>0)
                        o.push(c);
                }
            }
            else
            {
                if(o.size()&&o.top()>1)
                {
                     int c=o.top()-3;

                    o.pop();
                     if(c>0)
                        e.push(c);
                }
                else if(e.size())
                {
                   int c=e.top()-3;
                    e.pop();
                      if(c>0)
                        o.push(c);
                }
            }

        }
            if(e.size()||o.size())
                s=m+1;
            else
                en=m;
        }
        for(i=0;i<s;i++)
            cout <<'Y';
        for(i=s;i<=b.size();i++)
            cout <<'N';
        cout <<'\n';
    }
}

Compilation message

Main.cpp: In function 'int main()':
Main.cpp:17:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   17 |         for(i=0;i<a.size();i++)
      |                 ~^~~~~~~~~
Main.cpp:103:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  103 |         for(i=s;i<=b.size();i++)
      |                 ~^~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 24 ms 716 KB Output is correct
2 Correct 20 ms 576 KB Output is correct
3 Correct 37 ms 668 KB Output is correct
4 Correct 36 ms 804 KB Output is correct
5 Correct 24 ms 564 KB Output is correct
6 Correct 37 ms 884 KB Output is correct
7 Incorrect 21 ms 520 KB Output isn't correct
8 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 38 ms 752 KB Output is correct
2 Correct 24 ms 504 KB Output is correct
3 Correct 40 ms 580 KB Output is correct
4 Correct 40 ms 712 KB Output is correct
5 Correct 24 ms 512 KB Output is correct
6 Correct 30 ms 716 KB Output is correct
7 Incorrect 26 ms 492 KB Output isn't correct
8 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 93 ms 712 KB Output is correct
2 Correct 64 ms 556 KB Output is correct
3 Correct 42 ms 528 KB Output is correct
4 Correct 32 ms 460 KB Output is correct
5 Correct 31 ms 504 KB Output is correct
6 Correct 34 ms 540 KB Output is correct
7 Correct 39 ms 548 KB Output is correct
8 Correct 49 ms 580 KB Output is correct
9 Correct 30 ms 468 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 24 ms 716 KB Output is correct
2 Correct 20 ms 576 KB Output is correct
3 Correct 37 ms 668 KB Output is correct
4 Correct 36 ms 804 KB Output is correct
5 Correct 24 ms 564 KB Output is correct
6 Correct 37 ms 884 KB Output is correct
7 Incorrect 21 ms 520 KB Output isn't correct
8 Halted 0 ms 0 KB -