結果

問題 No.438 Cwwプログラミング入門
ユーザー 10_oh_fu
提出日時 2016-10-29 00:06:59
言語 C++11(廃止可能性あり)
(gcc 13.3.0)
結果
WA  
実行時間 -
コード長 2,620 bytes
コンパイル時間 933 ms
コンパイル使用メモリ 91,512 KB
実行使用メモリ 814,628 KB
最終ジャッジ日時 2024-11-24 22:06:54
合計ジャッジ時間 11,334 ms
ジャッジサーバーID
(参考情報)
judge3 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 86 WA * 4 RE * 7 TLE * 1
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <cstdio>
#include <iostream>
#include <cmath>
#include <cstring> 
#include <sstream>
#include <algorithm>
#include <cstdlib>
#include <map>
#include <queue>
#include <utility>
#include <vector>
#include <set>
#include <memory.h>
#include <iomanip>
#include <bitset>
#include <list>
#include <stack>
 
using namespace std;

#define mod 1000000007

int main()
{
    int x, y, z;
    cin >> x >> y >> z;
    if(x + y == z){
        cout << "cwC" << endl;
        return 0;
    } else if(x - y == z){
        cout << "wcW" << endl;
        return 0;
    } else if(y - x == z){
        cout << "cwW" << endl;
        return 0;
    } else if(x == z){
        cout << "c" << endl;
        return 0;
    } else if(y == z){
        cout << "w" << endl;
        return 0;
    } else if(z == 0){
        cout << "" << endl;
        return 0;
    }
    for(int xnum = 2; xnum < 10000; xnum++){
        if(abs(z - x * xnum) % y != 0) continue;
        int ynum = (z - x * xnum) / y;
        if(ynum == 0){
            string first(xnum, 'c');
            string second(xnum - 1, 'C');
            if((first + second).length() > 10000) continue;
            cout << first + second << endl;
            return 0;
        }
        int tmpy = abs(ynum);
        string first(tmpy, 'w');
        string second(xnum, 'c');
        string third(xnum - 1, 'C');
        string fourth;
        if(ynum < 0){
            string tmp(-ynum, 'W');
            fourth = tmp;
        } else {
            string tmp(ynum, 'C');
            fourth = tmp;
        }
        string ans = first + second + third + fourth;
        if(ans.length() > 10000) continue;
        cout << ans << endl;
        return 0;
    }
    swap(x, y);
    for(int xnum = 2; xnum < 10000; xnum++){
        if(abs(z - x * xnum) % y != 0) continue;
        int ynum = (z - x * xnum) / y;
        if(ynum == 0){
            string first(xnum, 'c');
            string second(xnum - 1, 'C');
            if((first + second).length() > 10000) continue;
            cout << first + second << endl;
            return 0;
        }
        int tmpy = abs(ynum);
        string first(tmpy, 'c');
        string second(xnum, 'w');
        string third(xnum - 1, 'C');
        string fourth;
        if(ynum < 0){
            string tmp(-ynum, 'W');
            fourth = tmp;
        } else {
            string tmp(ynum, 'C');
            fourth = tmp;
        }
        string ans = first + second + third + fourth;
        if(ans.length() > 10000) continue;
        cout << ans << endl;
        return 0;
    }
    cout << "mourennaihasimasenn" << endl;
    return 0;
}
0