結果

問題 No.438 Cwwプログラミング入門
ユーザー togari_takamoto
提出日時 2016-10-29 00:08:29
言語 C++11(廃止可能性あり)
(gcc 13.3.0)
結果
WA  
実行時間 -
コード長 2,056 bytes
コンパイル時間 1,367 ms
コンパイル使用メモリ 160,872 KB
実行使用メモリ 6,824 KB
最終ジャッジ日時 2024-11-24 22:08:29
合計ジャッジ時間 7,618 ms
ジャッジサーバーID
(参考情報)
judge1 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 79 WA * 13 RE * 6
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using ld = long double;
using u32 = uint32_t;
using vi = vector<int>;    using vvi = vector<vi>;
using vb = vector<bool>;   using vvb = vector<vb>;
using vl = vector<ll>;     using vvl = vector<vl>;
using vd = vector<double>; using vvd = vector<vd>;

#define REP(i,n) for(auto i = 0 * (n), i##_len = (n); i < i##_len; ++i)
#define ALL(c) (c).begin(), (c).end()
#define FOR(i,s,n) for(ll i=s, i##_len=(ll)(n); i<i##_len; ++i)
#define TEN(x) ((ll)1e##x)
const ll mod = TEN(9) + 7;

ll extgcd(ll a, ll b, ll *x, ll *y) {
	if (b == 0) return (*x = (a<0) ? -1 : 1), *y = 0, abs(a);
	ll d = extgcd(b, a%b, y, x);
	return *y -= a / b*(*x), d;
}

int main() {
#ifdef INPUT_FROM_FILE
	ifstream cin("sample.in");
	ofstream cout("sample.out");
#endif
	cin.tie(0);
	ios_base::sync_with_stdio(false);
	cout << fixed << setprecision(50);
	ll a, b, c; cin >> a >> b >> c;
	REP(i, 10001) {
		auto cww = [&](ll x, ll y) {
			if (x < 0) {
				if (-x + y + max<ll>(0, y - 1) - x > 10000) return false;
			} else if (y < 0) {
				if (-y + x + max<ll>(0, x - 1) - y > 10000) return false;
			} else {
				if (x + y + max<ll>(0, x - 1 + y) > 10000) return false;
			}

			if (x < 0) {
				REP(i, -x) cout << 'c';
				REP(i, y) cout << 'w';
				REP(i, y - 1) cout << 'C';
				REP(i, -x) cout << 'W';
			} else if (y < 0) {
				REP(i, -y) cout << 'w';
				REP(i, x) cout << 'c';
				REP(i, x - 1) cout << 'C';
				REP(i, -y) cout << 'W';
			} else {
				REP(i, x) cout << 'c';
				REP(i, y) cout << 'w';
				REP(i, y + x - 1) cout << 'C';
			}
			return true;
		};
		{
			ll x = i;
			if ((c - x * a) % b) continue;
			if (cww(x, (c - x * a) / b)) return 0;
		}
		{
			ll x = -i;
			if ((c - x * a) % b) continue;
			if (cww(x, (c - x * a) / b)) return 0;
		}
		{
			ll y = i;
			if ((c - y * b) % a) continue;
			if (cww((c - y * b) / a, y)) return 0;
		}
		{
			ll y = -i;
			if ((c - y * b) % a) continue;
			if (cww((c - y * b) / a, y)) return 0;
		}
	}

	cout << "mourennaihasimasenn" << endl;

	return 0;
}
0