• 牛客网 小东所在公司要发年终奖,而小东恰好获得了最高福利,他要在公司年会上参与一个抽奖游游戏在一个6*6的棋盘上进行,上面放着36个价值不等的礼物,每个小的棋盘上面放置着一个礼物,他需要从左上角开始游戏,每次只能向下或者向右移动一步,到达右下角停止,一路上的格子里的礼物小东都能拿到,请设计一个算法使小东拿到价值最高的礼物


    // ConsoleApplication12.cpp : 定义控制台应用程序的入口点。
    //

    #include "stdafx.h"
    // ConsoleApplication12.cpp : 定义控制台应用程序的入口点。
    //
    
    #include<iostream>
    #include<vector>
    #include<string>
    #include<algorithm>
    #include<numeric>
    using namespace std;
    
    class Bonus {
    public:
    	int getMost(vector<vector<int> > board) {
    		// write code here
    		int sum=0;
    		if (board.size() == 1) //行等于1
    		{
    			for (int i = 0;i < board[0].size();++i)
    			{
    				sum = accumulate(board[0].begin(),board[0].end(),0);
    			}
    			return sum;
    		}
    	
    
    		if (board[0].size() == 1) //列等于1
    		{
    			for (int i = 0;i < board.size();++i)
    			{
    				sum = sum + board[i][0];
    			}
    			return sum;
    		}
    
    		
    
    		
    		return sum+ max(getMostLowRow( board) , getMostLowCol(board))+ board[0][0];
    	}
    	int getMostLowRow(vector<vector<int> > board) {
    		//删除行
    		board.erase(board.begin());		
    		return getMost(board);
    	}
    
    	int getMostLowCol(vector<vector<int> > board) {
    		//删除列
    		for (int i = 0;i < board.size();++i)
    		{
    			board[i].erase(board[i].begin());
    		}
    		return getMost(board);
    	}
    };
    int main()
    {
    	
    	vector<int> vec1 = { 1,2 };
    	vector<int> vec2 = { 3,4 };
    	vector<vector<int>> vec;
    	vec.push_back(vec1);
    	vec.push_back(vec2);
    	Bonus bo;
    	cout<<"所获取的最大值为:"<<bo.getMost(vec);
    	cout << endl;
    	return 0;
    }
    

    //这种一般用回归

  • 相关阅读:
    学习Ember遇到的一些问题
    angular学习资源
    电话号码验证(正则)
    使用 Bitbucket Pipelines 持续交付托管项目
    zookeepercli
    如何用 JIRA REST API 创建 Issue
    Maven如何传递系统属性变量到TestNG
    基于WebDriver&TestNG 实现自己的Annotation @TakeScreenshotOnFailure
    25+ Useful Selenium Web driver Code Snippets For GUI Testing Automation
    Selenium WebDriver 之 PageObjects 模式 by Example
  • 原文地址:https://www.cnblogs.com/wdan2016/p/6430455.html
Copyright © 2020-2023  润新知