提出 #2391206
ソースコード 拡げる
#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
#include <map>
#include <iomanip>
#include <sstream>
#include <bitset>
#include <fstream>
#include <queue>
#include <set>
#include <list>
#include <stack>
#include <queue>
#include <sstream>
#define For(i,a,b) for(int i=(a);i<(b);++i)
#define rep(i,n) For(i,0,n)
//clear memory
#define CLR(a) memset((a), 0 ,sizeof(a))
#define SORT(c) sort((c).begin(),(c).end())
#define vi(m,a) vector<int> m(a)
#define vti(m,a,i) vector<vector<int>> m(a,vector<int>(i))
#define ALL(it,a) for(auto it = a.begin(); it!=a.end(); it++)
#define Fe(it,a) for(auto &it : a)
#define all(a) begin(a),end(a)
using namespace std;
typedef pair<int, int> pii;
typedef long long ll;
typedef pair<ll, ll> pll;
#define WARU 1000000007;
int dx[] = { 1,0,-1,0 };
int dy[] = { 0,1,0,-1 };
int main() {
int a, b, c;
int x, y;
cin >> a >> b >> c >> x >> y;
// plan1
int m = min(x, y);
ll result1 = m * c * 2;
if (x > m) {
result1 += (x - m) * a;
}
if (y > m) {
result1 += (y - m) * b;
}
int ma = max(x, y);
ll result3 = ma * c * 2;
ll result2 = a * x + b * y;
result2 = min(result3, result2);
cout << min(result1, result2) << endl;
}
提出情報
ジャッジ結果
| セット名 |
Sample |
All |
| 得点 / 配点 |
0 / 0 |
300 / 300 |
| 結果 |
|
|
| セット名 |
テストケース |
| Sample |
a01, a02, a03 |
| All |
a01, a02, a03, b04, b05, b06, b07, b08, b09, b10, b11, b12, b13, b14, b15 |
| ケース名 |
結果 |
実行時間 |
メモリ |
| a01 |
AC |
1 ms |
256 KiB |
| a02 |
AC |
1 ms |
256 KiB |
| a03 |
AC |
1 ms |
256 KiB |
| b04 |
AC |
1 ms |
256 KiB |
| b05 |
AC |
1 ms |
256 KiB |
| b06 |
AC |
1 ms |
256 KiB |
| b07 |
AC |
1 ms |
256 KiB |
| b08 |
AC |
1 ms |
256 KiB |
| b09 |
AC |
1 ms |
256 KiB |
| b10 |
AC |
1 ms |
256 KiB |
| b11 |
AC |
1 ms |
256 KiB |
| b12 |
AC |
1 ms |
256 KiB |
| b13 |
AC |
1 ms |
256 KiB |
| b14 |
AC |
1 ms |
256 KiB |
| b15 |
AC |
1 ms |
256 KiB |