SRM403 Div.2 Easy
日付が変更しそうだし、後もう少しでSRMなので手短に。
がんばる
4と7で構成される数字のうちnを超えない最大を求めよう!という問題。
とりあえず頑張って解いた。
以上
class TheLargestLuckyNumber { public: int find(int n) { vector <int> res(2), tmp; res[0] = 4; res[1] = 7; int ten=0, ans, a=2; for (int i=2; ten<n; i++) { ten = (int)pow(10.0, i-1); for (int j=0; j<a; j++) { tmp.push_back(res[res.size()-1-j]+ten*4); tmp.push_back(res[res.size()-1-j]+ten*7); } for (int j=0; j<tmp.size(); j++) { res.push_back(tmp[j]); } a *= 2; sort(res.begin(), res.end()); } for (int i=res.size()-1; i>=0; i--) { if (res[i] <= n) { ans = res[i]; break; } } return ans; } };