結果

問題 No.297 カードの数式
ユーザー けーけー
提出日時 2015-11-07 16:30:05
言語 C++11
(gcc 11.4.0)
結果
AC  
実行時間 2 ms / 1,000 ms
コード長 1,111 bytes
コンパイル時間 747 ms
コンパイル使用メモリ 71,556 KB
実行使用メモリ 5,376 KB
最終ジャッジ日時 2024-06-07 18:14:56
合計ジャッジ時間 1,491 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 2 ms
5,248 KB
testcase_01 AC 1 ms
5,376 KB
testcase_02 AC 2 ms
5,376 KB
testcase_03 AC 1 ms
5,376 KB
testcase_04 AC 2 ms
5,376 KB
testcase_05 AC 2 ms
5,376 KB
testcase_06 AC 2 ms
5,376 KB
testcase_07 AC 1 ms
5,376 KB
testcase_08 AC 1 ms
5,376 KB
testcase_09 AC 1 ms
5,376 KB
testcase_10 AC 1 ms
5,376 KB
testcase_11 AC 1 ms
5,376 KB
testcase_12 AC 2 ms
5,376 KB
testcase_13 AC 1 ms
5,376 KB
testcase_14 AC 2 ms
5,376 KB
testcase_15 AC 1 ms
5,376 KB
testcase_16 AC 1 ms
5,376 KB
testcase_17 AC 2 ms
5,376 KB
testcase_18 AC 1 ms
5,376 KB
testcase_19 AC 2 ms
5,376 KB
testcase_20 AC 1 ms
5,376 KB
testcase_21 AC 2 ms
5,376 KB
testcase_22 AC 1 ms
5,376 KB
testcase_23 AC 1 ms
5,376 KB
testcase_24 AC 1 ms
5,376 KB
testcase_25 AC 2 ms
5,376 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<iostream>
#include<string>
#include<list>
#include<map>
#include<vector>
#include<stack>
#include<cstdint>
#include<sstream>
#include<numeric>
#include<algorithm>
#define INT long long
using namespace std;
INT a, b, c, n, m;
char dp[15];
INT plb[15], mib[15];
INT pl, mi;
int main() {
	INT i, j, k, t, u, v, sm = 0, bi = 0;
	cin >> n;
	for (i = 0; i < n; i++)
		cin >> dp[i];
	sort(dp,dp+n);
	pl++;
	for (i = 0;; i++) {
		if (dp[i] == '+')
			pl++;
		else if (dp[i] == '-')
			mi++;
		else
			break;
	}
	v = i;
	for (; i < n; i++)
		dp[i] -= '0';
	if (mi == 0) {
		for (i = v; i < n; i++) {
			mib[i%pl] *= 10;
			mib[i%pl] += dp[i];
		}
		for (i = 0; i < pl; i++)
			sm += mib[i];
	}
	else {
		for (i = v; i < v + pl; i++)
			sm += dp[i];
		for (; i < v + pl + mi - 1; i++)
			sm -= dp[i];
		u = i;
		t = 0;
		for (i = n - 1; i >= u; i--) {
			t *= 10;
			t += dp[i];
		}
		sm -= t;
	}
	for (i = v; i < v + mi; i++)
		bi -= dp[i];
	for (; i < v + mi + pl - 1; i++)
		bi += dp[i];
	u = i;
	t = 0;
	for (i = n - 1; i >= u; i--) {
		t *= 10;
		t += dp[i];
	}
	bi += t;
	cout << bi << ' ' << sm << endl;
}
0