結果
| 問題 |
No.405 ローマ数字の腕時計
|
| コンテスト | |
| ユーザー |
sorag
|
| 提出日時 | 2022-08-09 14:56:18 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
AC
|
| 実行時間 | 2 ms / 2,000 ms |
| コード長 | 903 bytes |
| コンパイル時間 | 973 ms |
| コンパイル使用メモリ | 93,584 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-09-19 20:15:36 |
| 合計ジャッジ時間 | 1,789 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 27 |
ソースコード
#include<iostream>
#include<string>
#include<vector>
#include<algorithm>
#include<map>
#define all(x) x.begin(),x.end()
#define pb push_back
#define ll long long
#define P pair<int,int>
#define LP pair<ll,ll>
using namespace std;
int main() {
int t,cnt,ans;
string s,x;
cin >>s>> t;
map<string, int> a;
map<int,string> b;
a["I"] = 1;
a["II"] = 2;
a["III"] = 3;
a["IIII"] =4;
a["V"] = 5;
a["VI"] = 6;
a["VII"] = 7;
a["VIII"] =8;
a["IX"] = 9;
a["X"] = 10;
a["XI"] = 11;
a["XII"] = 12;
b[1]= "I";
b[2]="II";
b[3]="III";
b[4]="IIII";
b[5]= "V";
b[6]= "VI";
b[7]= "VII";
b[8]= "VIII";
b[9]= "IX";
b[10]= "X";
b[11]= "XI";
b[0]= "XII";
cnt = a[s];
if (t >= 0) {
ans = (cnt + t % 12) % 12;
cout << b[ans] << endl;
}
else {
ans = abs(cnt - abs(t) % 12) % 12;
if (cnt - abs(t) % 12 >= 0) cout << b[ans] << endl;
else cout << b[12 - ans] << endl;
}
return 0;
}
sorag