結果

問題 No.8042 本棚
ユーザー cider
提出日時 2019-04-01 21:26:44
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 3 ms / 2,000 ms
コード長 2,421 bytes
コンパイル時間 2,553 ms
コンパイル使用メモリ 183,136 KB
実行使用メモリ 5,376 KB
最終ジャッジ日時 2024-06-28 01:47:27
合計ジャッジ時間 3,297 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 24
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.cpp: In function 'int kan(std::string)':
main.cpp:110:1: warning: control reaches end of non-void function [-Wreturn-type]
  110 | }
      | ^

ソースコード

diff #
プレゼンテーションモードにする

#include<bits/stdc++.h>
//#define int long long
#define FOR(i, a, b) for (int i = a; i < b; ++i)
#define rep(N) for (int i = 0; i < N; ++i)
#define Rep(a, b) for (int i = a; i < b; ++i)
#define For(i, N) for (int i = 0; i < N; ++i)
#define all(v) v.begin(), v.end()
#define rev(v) v.rbegin(), v.rend()
#define makei(N) int N; cin >> N;
#define makes(s) string s; cin >> s;
#define maked(d) double d; cin >> d;
#define makev(v, N) vi v(N); rep(N)cin >> v[i];
#define mod 1000000007
using namespace std;
using ll = long long;
using vi = vector<int>;
using vvi = vector<vector<int>>;
using vll = vector<ll>;
using vb = vector<bool>;
using vvb = vector<vector<bool>>;
using vs = vector<string>;
using pii = pair<int, int>;
using pis = pair<int, string>;
using msi = map<string, int>;
template<typename T>
void say(T s) {
cout << s << "\n";
}
template<typename T>
void say(vector<T> s) {
auto itr = s.begin();
cout << *(itr++);
while (itr != s.end()) {
cout << " " << *(itr++);
}
cout << "\n";
}
template<typename T>
void say(vector<T> s, char r) {
auto itr = s.begin();
cout << *(itr++);
while (itr != s.end()) {
cout << r << *(itr++);
}
cout << "\n";
}
void yn(bool b) {
if (b)say("yes");
else say("no");
}
void Yn(bool b) {
if (b)say("Yes");
else say("No");
}
void YN(bool b) {
if (b)say("YES");
else say("NO");
}
template<typename T>
void maxi(T& a, T b) {
a = max(a, b);
}
template<typename T>
void mini(T& a, T b) {
a = min(a, b);
}
void exact_say(double x) {
cout << setprecision(numeric_limits<double>::max_digits10) << x << endl;
}
template<typename T>
vector<vector<T>> fill_vector(int h, int w, T val) {
vector<vector<T>> ret;
vector<T> v(w, val);
rep(h)ret.push_back(v);
return ret;
}
template<typename T>
T max(vector<T> v) {
T ret = v[0];
Rep(1, v.size())maxi(ret, v[i]);
return ret;
}
template<typename T>
T min(vector<T> v) {
T ret = v[0];
Rep(1, v.size())mini(ret, v[i]);
return ret;
}
using pss = pair<string, string>;
int kan(string s) {
if (s == "iti")return 1;
if (s == "ni")return 2;
if (s == "san")return 3;
if (s == "yon")return 4;
}
bool comp(pss a, pss b) {
if (a.first != b.first)return a.first < b.first;
return kan(a.second) < kan(b.second);
}
signed main() {
makei(n);
vector<pss> v;
rep(n) {
makes(s);
makes(id);
v.push_back({ s,id });
}
sort(all(v), comp);
for (pss p : v) {
cout << p.first << " " << p.second << endl;
}
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0