結果
問題 | No.536 人工知能 |
ユーザー |
|
提出日時 | 2017-06-30 22:23:57 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 2 ms / 1,000 ms |
コード長 | 1,938 bytes |
コンパイル時間 | 1,750 ms |
コンパイル使用メモリ | 169,276 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-10-04 19:14:53 |
合計ジャッジ時間 | 2,159 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 11 |
ソースコード
#ifdef _MSC_VER# define _CRT_SECURE_NO_WARNINGS# define _USE_MATH_DEFINES# include <intrin.h># define __builtin_popcount __popcnt#endif#include <bits/stdc++.h>using namespace std;using i32 = int; using i64 = long long int; using f64 = double;using u32 = unsigned int; using u64 = unsigned long long int; using str = string;template <typename T> using vec = vector<T>; void in() { }template <typename T, typename...TS> void in(T &&x, TS &&...xs) { cin >> x; in(move(xs)...); }template <typename T> void out(T &&x) { cout << x << "\n"; }template <typename T, typename...TS> void out(T &&x, TS &&...xs) { cout << x << " "; out(move(xs)...); }#define indef(t, ...) t __VA_ARGS__; in(__VA_ARGS__)#define get(t) []{ t x; cin >> x; return x; }()#define times(n, i) for (i32 i = 0; i < (n); ++i)#define range(a, b, i) for (i32 i = (a); i < (b); ++i)#define upto(a, b, i) for (i32 i = (a); i <= (b); ++i)#define downto(a, b, i) for (i32 i = (a); i >= (b); --i)#define all(xs) (xs).begin(), (xs).end()#define sortall(xs) sort(all(xs))#define reverseall(xs) reverse(all(xs))#define even(x) ((abs(x) & 1) == 0)#define odd(x) ((abs(x) & 1) == 1)#define bit(x, i) (((x) >> i) & 1)#define append emplace_back#define bisect_left lower_bound#define bisect_right upper_bound#define bound(a, x, b) (a <= x && x <= b)const i64 MOD = 1000000007ll;const f64 EPS = 1e-10;str solve() {indef(str, s);i32 n = s.size();str r = "";if (s[n-2] == 'a' && s[n-1] == 'i') {times(n-2, si) r += s[si];}else {r = s;r += '-';}r += 'A';r += 'I';return r;}i32 main(){ios::sync_with_stdio(false);#ifdef _MSC_VER/**ifstream fin("input.txt"); cin.rdbuf(fin.rdbuf()); assert(fin);ofstream fout("output.txt"); cout.rdbuf(fout.rdbuf()); assert(fout);/**/#endifcout << fixed << setprecision(9);out(solve());return 0;}