- クラス Cryptography
- 整数リストが与えられる。その中から一つだけを選んで+1する時、結果のリストの積を最大にするには?
- 一番小さい数をインクリメントして積を返す
- これくらいの問題サイズなら全列挙しても良い。
- red coderでも全列挙している人多し。
- 面倒なこと考えるより速さ、ということかな。
#include <sstream>
#include <string>
#include <vector>
#include <map>
#include <algorithm>
#include <iostream>
#include <utility>
#include <set>
#include <cctype>
#include <queue>
#include <stack>
#include <cstdio>
#include <cstdlib>
#include <cmath>
using namespace std;
class Cryptography{
public:
long long encrypt(vector <int> numbers){
*min_element(numbers.begin(), numbers.end()) += 1;
long long ret = 1;
for(int i = 0; i < numbers.size(); i++){
ret *= numbers[i];
}
return ret;
}
};