結果
問題 | No.2734 Addition and Multiplication in yukicoder (Hard) |
ユーザー |
|
提出日時 | 2024-04-19 22:00:37 |
言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 954 ms / 5,000 ms |
コード長 | 1,875 bytes |
コンパイル時間 | 3,559 ms |
コンパイル使用メモリ | 259,912 KB |
実行使用メモリ | 18,816 KB |
最終ジャッジ日時 | 2024-10-11 15:07:53 |
合計ジャッジ時間 | 17,222 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 36 |
ソースコード
#include <bits/stdc++.h>using namespace std;template <class F, class S>ostream &operator<<(ostream &s, const pair<F, S> &v) {s << "(" << v.first << ", " << v.second << ")";return s;}template <ranges::range T,class = enable_if_t<!is_convertible_v<T, string_view>>>istream &operator>>(istream &s, T &&v) {for (auto &&x : v) s >> x;return s;}template <ranges::range T,class = enable_if_t<!is_convertible_v<T, string_view>>>ostream &operator<<(ostream &s, T &&v) {for (auto &&x : v) s << x << ' ';return s;}#ifdef LOCALtemplate <class... T> void dbg(T... x) {char e{};((cerr << e << x, e = ' '), ...);}#define debug(x...) dbg(#x, '=', x, '\n')#else#pragma GCC optimize("O3,unroll-loops")#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")#define debug(...) ((void)0)#endif#define all(v) (v).begin(), (v).end()#define rall(v) (v).rbegin(), (v).rend()#define ff first#define ss secondtemplate <class T> inline constexpr T inf = numeric_limits<T>::max() / 2;template <class T> bool chmin(T &a, T b) { return (b < a and (a = b, true)); }template <class T> bool chmax(T &a, T b) { return (a < b and (a = b, true)); }using u32 = unsigned int;using i64 = long long;using u64 = unsigned long long;using i128 = __int128;constexpr i64 mod = 998244353;void solve() {int n;cin >> n;vector<string> S(n);cin >> S;sort(all(S), [&](auto a, auto b) {return a + b < b + a;});i64 ans = 0;for (auto s : S) {for (char c : s) {ans = ans * 10 + c - '0';ans %= mod;}}cout << ans << '\n';}signed main() {cin.tie(0)->sync_with_stdio(false);cin.exceptions(cin.failbit);int t = 1;// cin >> t;while (t--) {solve();}return 0;}