結果
問題 | No.3016 ハチマキおじさん |
ユーザー |
![]() |
提出日時 | 2025-01-25 14:02:05 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,353 bytes |
コンパイル時間 | 961 ms |
コンパイル使用メモリ | 98,104 KB |
実行使用メモリ | 11,520 KB |
最終ジャッジ日時 | 2025-01-25 23:05:22 |
合計ジャッジ時間 | 4,278 ms |
ジャッジサーバーID (参考情報) |
judge10 / judge6 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 17 WA * 14 |
ソースコード
#include <iostream>#include <iomanip>//小数点出力用//cout << fixed << setprecision(10) << ans;#include <cmath>#include <algorithm>#include <vector>#include <queue>#include <stack>#include <set>#include <map>using ll = long long;using namespace std;#define modP 998244353bool chkrng0idx(int pos, int sup) { return (0 <= pos && pos < sup); }int clk4(int num) { return (num - 2) * (num % 2); }void yn(bool tf) { cout << (tf ? "Yes\n" : "No\n"); }int main() {ios::sync_with_stdio(false);cin.tie(nullptr);int N;cin >> N;int A[200002], B[200002];for (int i = 0;i < N;i++) {cin >> A[i];}for (int i = 1;i < N;i++) {cin >> B[i-1];}sort(A, A + N);sort(B, B + N - 1);ll bad = 0;for (int i = 0;i < N-1;i++) {bad += abs(A[i] - B[i]);}ll ans[200002];ans[N - 1] = bad;for (int i = N - 2;i >= 0;i--) {bad += abs(A[i+1] - B[i]);bad -= abs(A[i] - B[i]);ans[i] = bad;}ll Mi = 1e18;for (int i = 0;i < N;i++) {Mi = min(Mi, ans[i]);}set<ll>Out;for (int i = 0;i < N;i++) {if (ans[i] == Mi)Out.insert(A[i]);}cout << Out.size() << endl;auto itr = Out.begin();while (itr != Out.end()) {cout << *itr << endl;itr++;}return 0;}