首页 > 其他 > 详细

CodeForces 12B Correct Solution

时间:2019-07-20 11:21:35      阅读:189      评论:0      收藏:0      [点我收藏+]

One cold winter evening Alice and her older brother Bob was sitting at home near the fireplace and giving each other interesting problems to solve. When it was Alice‘s turn, she told the number n to Bob and said:

—Shuffle the digits in this number in order to obtain the smallest possible number without leading zeroes.

—No problem! — said Bob and immediately gave her an answer.

Alice said a random number, so she doesn‘t know whether Bob‘s answer is correct. Help her to find this out, because impatient brother is waiting for the verdict.

Input

The first line contains one integer n (0 ≤ n ≤ 109) without leading zeroes. The second lines contains one integer m (0 ≤ m ≤ 109) — Bob‘s answer, possibly with leading zeroes.

Output

Print OK if Bob‘s answer is correct and WRONG_ANSWER otherwise.

Examples

Input
3310
1033
Output
OK
Input
4
5
Output
WRONG_ANSWER
#include <cstdio>
#include <iostream>
#include <string>
#include <cstring>
#include <cmath>
#include <algorithm>
#include <queue>
#include <vector>
#include <map>
using namespace std;
#define ll long long

string n, m;
int a[18], b[18], miao[18], sign, en[18];

int main()
{
    cin>>n>>m;
    int len1 = n.size(), len2 = m.size();
    if(len1 != len2)printf("WRONG_ANSWER\n");
    else
    {
        bool flag = 0;
        for(int i = 0; i<len1; i++)
        {
            a[i] = n[i]-48;
            miao[i] = b[i] = m[i]-48;
        }
        sort(a, a+len1);
        sort(miao, miao+len2);
        for(int i = 0; i<len1; i++)
        {
            if(a[i] != miao[i])
            {
                flag = 1;
                break;
            }
        }
        if(flag)printf("WRONG_ANSWER\n");
        else
        {
            for(int i = 0; i<len1; i++)
            {
                if(a[i])
                {
                    sign = i;
                    break;
                }
            }
            en[0] = a[sign];
            int ga = 1;
            for(int i = 0; i<len1; i++)
            {
                if(i != sign) en[ga++] = a[i];
            }
            for(int i = 0; i<len1; i++)
            {
                if(en[i] != b[i])
                {
                    flag = 1;
                    break;
                }
            }
            if(flag)printf("WRONG_ANSWER\n");
            else printf("OK\n");
        }
    }
    return 0;
}

 

CodeForces 12B Correct Solution

原文:https://www.cnblogs.com/RootVount/p/11216819.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!