蘑菇街笔试

 小峰疯狂的爱上了小兰,他想要向小兰告白,小峰是个内向的男孩子,不好意思当面说,正好小兰家的对面是一个很大的广告牌,所以他想要借助广告牌说出自己的爱情***。小峰想要在广告牌上写数字表达自己对小兰的爱意,数字越大代表队小兰的爱意越深,越容易获得小兰的垂青。不幸的是小峰只有v升油漆来书写数字,而数字d需要ad升油漆才能写好,并且小峰知道小兰不喜欢数字0,所以他不会让0出现在自己的爱情数字当中。请帮助小峰找到他利用手里的油漆能够完成的最大数字。 

全部评论
http://blog.csdn.net/wsnbb123456789/article/details/50548841
点赞 回复 分享
发布于 2016-04-01 01:24
#include<iostream> #include<utility> #include<vector> #include<algorithm> int main() { using namespace std; for (int n; cin >> n;) { vector<pair<int, int>> vec; for (int k =9, i{1}, j;k > 0 && cin >> j;--k,++i) { vec.push_back({ i,j }); } int minx = vec[0].second; for (const auto& p : vec) { minx = minx > p.second ? p.second : minx; } for (int bit = n / minx;bit > 0;--bit) { auto iter = find_if(vec.rbegin(), vec.rend(), [n, bit, minx](pair<int, int> big) {return big.second <= n - (bit-1)*minx;}); n -= iter->second; cout << iter->first; } cout << '\n'; } }
点赞 回复 分享
发布于 2016-04-01 12:20

相关推荐

点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务