結果

問題 No.438 Cwwプログラミング入門
ユーザー conf
提出日時 2016-10-29 00:13:04
言語 C++11(廃止可能性あり)
(gcc 13.3.0)
結果
WA  
実行時間 -
コード長 1,802 bytes
コンパイル時間 821 ms
コンパイル使用メモリ 63,772 KB
実行使用メモリ 6,820 KB
最終ジャッジ日時 2024-11-24 22:17:49
合計ジャッジ時間 6,093 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 90 WA * 3 RE * 5
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function ‘int main()’:
main.cpp:46:15: warning: ‘y’ may be used uninitialized in this function [-Wmaybe-uninitialized]
   46 |         }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(){
    int X,Y,Z,x,y;
    cin>>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)<=10000) break;
    }
    if(x==5001&&y==5001){
        cout<<"mourennaihasimasenn"<<endl;
        return 0;
    }else{
        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