답안 #417681

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
417681 2021-06-04T06:31:11 Z 장태환(#7548) Parking Problem (innopolis2021_final_A) C++17
31 / 100
145 ms 928 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,vector<int>,greater<int>>oo,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,vector<int>,greater<int>>o,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(e.top()-2);
                }
                else if(o.size())
                {
                 int c=o.top()-2;

                    o.pop();
                     if(c>0)
                        o.push(c);
                }
            }
            else
            {
                if(o.size())
                {
                     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:16:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   16 |         for(i=0;i<a.size();i++)
      |                 ~^~~~~~~~~
Main.cpp:101:18: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  101 |         for(i=s;i<=b.size();i++)
      |                 ~^~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 24 ms 716 KB Output is correct
2 Correct 24 ms 528 KB Output is correct
3 Correct 41 ms 552 KB Output is correct
4 Correct 37 ms 784 KB Output is correct
5 Correct 22 ms 460 KB Output is correct
6 Correct 37 ms 928 KB Output is correct
7 Correct 21 ms 500 KB Output is correct
8 Correct 38 ms 664 KB Output is correct
9 Correct 33 ms 688 KB Output is correct
10 Correct 22 ms 460 KB Output is correct
11 Correct 42 ms 648 KB Output is correct
12 Correct 28 ms 768 KB Output is correct
13 Correct 21 ms 468 KB Output is correct
14 Correct 51 ms 568 KB Output is correct
15 Correct 31 ms 452 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 39 ms 732 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 145 ms 712 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 24 ms 716 KB Output is correct
2 Correct 24 ms 528 KB Output is correct
3 Correct 41 ms 552 KB Output is correct
4 Correct 37 ms 784 KB Output is correct
5 Correct 22 ms 460 KB Output is correct
6 Correct 37 ms 928 KB Output is correct
7 Correct 21 ms 500 KB Output is correct
8 Correct 38 ms 664 KB Output is correct
9 Correct 33 ms 688 KB Output is correct
10 Correct 22 ms 460 KB Output is correct
11 Correct 42 ms 648 KB Output is correct
12 Correct 28 ms 768 KB Output is correct
13 Correct 21 ms 468 KB Output is correct
14 Correct 51 ms 568 KB Output is correct
15 Correct 31 ms 452 KB Output is correct
16 Incorrect 39 ms 732 KB Output isn't correct
17 Halted 0 ms 0 KB -