結果

問題 No.438 Cwwプログラミング入門
ユーザー confconf
提出日時 2016-10-29 00:42:20
言語 C++11
(gcc 13.3.0)
結果
WA  
(最新)
J_TLE  
(最初)
実行時間 -
コード長 2,250 bytes
コンパイル時間 577 ms
コンパイル使用メモリ 63,776 KB
実行使用メモリ 6,824 KB
最終ジャッジ日時 2024-11-25 05:34:21
合計ジャッジ時間 3,677 ms
ジャッジサーバーID
(参考情報)
judge3 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 97 WA * 1
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function ‘int main()’:
main.cpp:72:11: warning: ‘y’ may be used uninitialized in this function [-Wmaybe-uninitialized]
   72 |     }else if(y<0){
      |           ^~

ソースコード

diff #

#include <iostream>
#include <algorithm>
#include <vector>
#include <stack>
#include <cstdio>

using namespace std;

int extgcd(int a, int b, int&x, int& y){
    int d=a;
    if(b!=0){
        d=extgcd(b,a%b,y,x);
        y-=(a/b)*x;
    }else{
        x=1; y=0;
    }
    return d;
}

char S[10010];

int main(){
    int64_t X,Y,Z,x,y;
    cin>>X>>Y>>Z;
    if(X&&Y&&Z){
        for(x=-5000;x<=5000;x++){
            if((Z-x*X)%Y) continue;
            y=(Z-x*X)/Y;
            if(2*abs(x)+2*abs(y)-1<=10000) break;
        }
        if(x==5001){
            cout<<"mourennaihasimasenn"<<endl;
            return 0;
        }
    }else{
        if(!Z){
            cout<<"ccW"<<endl;
        }
        if(!X&&!Y){
            cout<<"mourennaihasimasenn"<<endl;
            return 0;
        }
        if(!X&&Y){
            if(Z%Y){
                cout<<"mourennaihasimasenn"<<endl;
                return 0;
            }else{
                x=0; y=Z/Y;
            }
        }
        if(X&&!Y){
            if(Z%X){
                cout<<"mourennaihasimasenn"<<endl;
                return 0;
            }else{
                x=Z/X; y=0;
            }
        }
    }
    if(x<0){
        x=-x;
        int p=0;
        for(int i=0;i<x&&p<10000;i++) S[p++]='c';
        for(int i=0;i<y&&p<10000;i++) S[p++]='w';
        for(int i=0;i<y-1&&p<10000;i++) S[p++]='C';
        for(int i=0;i<x&&p<10000;i++) S[p++]='W';
        if(p>=10000){
            cout<<"mourennaihasimasenn"<<endl;
        }else{
            printf("%s\n",S);
        }
    }else if(y<0){
        y=-y;
        int p=0;
        for(int i=0;i<y&&p<10000;i++) S[p++]='w';
        for(int i=0;i<x&&p<10000;i++) S[p++]='c';
        for(int i=0;i<x-1&&p<10000;i++) S[p++]='C';
        for(int i=0;i<y&&p<10000;i++) S[p++]='W';
        if(p>=10000){
            cout<<"mourennaihasimasenn"<<endl;
        }else{
            printf("%s\n",S);
        }
    }else{
        int p=0;
        for(int i=0;i<x&&p<10000;i++) S[p++]='c';
        for(int i=0;i<y&&p<10000;i++) S[p++]='w';
        for(int i=0;i<x+y-1&&p<10000;i++) S[p++]='C';
        if(p>=10000){
            cout<<"mourennaihasimasenn"<<endl;
        }else{
            printf("%s\n",S);
        }
    }

    return 0;
}
0