結果
問題 |
No.297 カードの数式
|
ユーザー |
![]() |
提出日時 | 2016-03-11 20:49:25 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,004 bytes |
コンパイル時間 | 679 ms |
コンパイル使用メモリ | 69,632 KB |
実行使用メモリ | 6,948 KB |
最終ジャッジ日時 | 2024-09-25 00:54:17 |
合計ジャッジ時間 | 1,611 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 WA * 1 |
other | AC * 7 WA * 16 |
ソースコード
#include <iostream> #include <vector> #include <algorithm> using namespace std; int main(){ int add = 0,sub = 0,n; vector<int> v; cin >> n; for(int i = n;i--;){ char c; cin >> c; if(c == '+'){ add++; continue; }else if(c == '-'){ sub++; continue; } v.push_back(c - '0'); } stable_sort(v.begin(),v.end()); int i,max = 0,min = 0,tmp = 0; //----------maxを求める処理----------// for(i = v.size() - 1;i >= add + sub;i--){ max *= 10; max += v[i]; } for(;i >= sub;i--) max += v[i]; for(;i >= 0;i--) max -= v[i]; //------maxを求める処理ここまで------// //----------minを求める処理----------// min = v[0]; for(i = v.size() - 1;i >= add + sub;i--){ tmp *= 10; tmp += v[i]; } min -= tmp; tmp = 0; for(;i >= 1;i--) tmp += v[i]; min += tmp; //------minを求める処理ここまで------// cout << max << ' ' << min << endl; }