結果
問題 |
No.8042 本棚
|
ユーザー |
|
提出日時 | 2022-05-11 17:30:36 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 3 ms / 2,000 ms |
コード長 | 2,510 bytes |
コンパイル時間 | 3,231 ms |
コンパイル使用メモリ | 208,712 KB |
最終ジャッジ日時 | 2025-01-29 06:02:01 |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 24 |
コンパイルメッセージ
In file included from /usr/include/c++/13/bits/stl_algobase.h:64, from /usr/include/c++/13/algorithm:60, from /usr/include/x86_64-linux-gnu/c++/13/bits/stdc++.h:51, from main.cpp:1: In constructor ‘constexpr std::pair<_T1, _T2>::pair(_U1&&, _U2&&) [with _U1 = std::__cxx11::basic_string<char>&; _U2 = int&; typename std::enable_if<(std::_PCC<true, _T1, _T2>::_MoveConstructiblePair<_U1, _U2>() && std::_PCC<true, _T1, _T2>::_ImplicitlyMoveConvertiblePair<_U1, _U2>()), bool>::type <anonymous> = true; _T1 = std::__cxx11::basic_string<char>; _T2 = int]’, inlined from ‘constexpr std::pair<typename std::__strip_reference_wrapper<typename std::decay<_Tp>::type>::__type, typename std::__strip_reference_wrapper<typename std::decay<_Tp2>::type>::__type> std::make_pair(_T1&&, _T2&&) [with _T1 = __cxx11::basic_string<char>&; _T2 = int&]’ at /usr/include/c++/13/bits/stl_pair.h:927:72, inlined from ‘void solve()’ at main.cpp:85:23: /usr/include/c++/13/bits/stl_pair.h:688:42: warning: ‘x’ may be used uninitialized [-Wmaybe-uninitialized] 688 | : first(std::forward<_U1>(__x)), second(std::forward<_U2>(__y)) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ main.cpp: In function ‘void solve()’: main.cpp:83:13: note: ‘x’ was declared here 83 | int x; | ^
ソースコード
#include <bits/stdc++.h> // #pragma GCC optimize("Ofast") // #pragma GCC optimize("unroll-loops") // #pragma GCC target("sse,sse2,sse3,ssse3,sse4,fma,abm,mmx,avx,avx2") #define rep(i, n) for (int i = 0; i < (int)(n); i++) #define rrep(i, n) for (int i = (int)(n - 1); i >= 0; i--) #define all(x) (x).begin(), (x).end() #define sz(x) int(x.size()) #define yn(joken) cout<<((joken) ? "Yes" : "No")<<"\n" #define YN(joken) cout<<((joken) ? "YES" : "NO")<<"\n" using namespace std; using ll = long long; using vi = vector<int>; using vl = vector<ll>; using vs = vector<string>; using vc = vector<char>; using vd = vector<double>; using vld = vector<long double>; using vvi = vector<vector<int>>; using vvl = vector<vector<ll>>; using vvs = vector<vector<string>>; using vvc = vector<vector<char>>; using vvd = vector<vector<double>>; using vvld = vector<vector<long double>>; using vvvi = vector<vector<vector<int>>>; using vvvl = vector<vector<vector<ll>>>; using vvvvi = vector<vector<vector<vector<int>>>>; using vvvvl = vector<vector<vector<vector<ll>>>>; using pii = pair<int,int>; using pll = pair<ll,ll>; const int INF = 1e9; const ll LINF = 2e18; template <class T> bool chmax(T& a, const T& b) { if (a < b) { a = b; return 1; } return 0; } template <class T> bool chmin(T& a, const T& b) { if (b < a) { a = b; return 1; } return 0; } bool ispow2(int i) { return i && (i & -i) == i; } bool ispow2(ll i) { return i && (i & -i) == i; } template <class T> vector<T> make_vec(size_t a) { return vector<T>(a); } template <class T, class... Ts> auto make_vec(size_t a, Ts... ts) { return vector<decltype(make_vec<T>(ts...))>(a, make_vec<T>(ts...)); } template <typename T> istream& operator>>(istream& is, vector<T>& v) { for (int i = 0; i < int(v.size()); i++) { is >> v[i]; } return is; } template <typename T> ostream& operator<<(ostream& os, const vector<T>& v) { for (int i = 0; i < int(v.size()); i++) { os << v[i]; if (i < int(v.size()) - 1) os << ' '; } return os; } void solve(){ int N; cin>>N; vector<pair<string,int>> V(N); vs X={"iti","ni","san","yon"}; rep(i,N){ string S,T; cin>>S>>T; int x; rep(i,4) if(X[i]==T) x=i+1; V[i]=make_pair(S,x); } sort(all(V)); rep(i,N){ cout<<V[i].first<<" "<<X[V[i].second-1]<<endl; } } int main(){ cin.tie(nullptr); ios::sync_with_stdio(false); solve(); }