滴水逆向联盟
标题: 基于visual Studio2013解决面试题之0405和最大的子矩阵 [打印本页]
作者: 大灰狼 时间: 2014-7-29 08:18
标题: 基于visual Studio2013解决面试题之0405和最大的子矩阵
本帖最后由 大灰狼 于 2014-7-29 08:41 编辑
题目![](http://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAT0AAAAdCAIAAABXIixIAAACuElEQVR4nO2W227DMAxD++n78+xhQNFaEk3JdlMNPNhDlsi6OKTTxyWE6Mbj7gaEEGnkWyH6Id8K0Q/5Voh+yLdC9EO+FaIf8q0Q/ZBvheiHfCtEP+RbIfqR9u3j54jVcdqVoszajUO9pvq7ziaP4slB7F+tXBRwSACH2N78aSmyqW6szacdzBDpMrq5WD2FW9qqB0/hBmerR3dSAYWElxlwGp+FzJ9qnjzyTkuRhFUD/lttYvZdei3EvKdnZPkFl+HfU6QqLBc80d7vrZuH3E8sfVI2TJIoT7n5Z+S0pRNSJNnzE26pg5nQhz3iN2savPcYsklAWndq0rduEv4OH2BrkacS9hvZGyMM7Nta8+DpISkWqPt2Sx/8eNEHh3k9KQEtzjX0GcW4U7j9T+cFkdEqPnJY5U4aDYj3x2ZgjrZyoVTz0aMhYJcUCySy8JOT2XiJXO+bFbURHYe3+HbagA1gThlG96kRSAWnPiDATm5+fny+0ErzqbZBxVTdFGwW8sTiz3K7EJeOkoDXU1iI54o6dLu1/bjB9l/3zLI53eVDJLnt2BXMx8RdGD3FzU8jyUJ887xoD0mxAKvFoZWNHbyWYAL4zcLJU4cLKURS31FRN354hH3rXqz4Flyv+BafTTiSLLTSPKh4efsMKjJSLFD/QbWrAzJbdGqs+HZ6neoQl572cHmSiqwYLR/2pGZLMmDqW34no2OLMW1tul2+3SLFAj18Cz5HQ9ig2mhbU9WZADdy2nbhJphoiJl2/gHfrhiGNO2HfXtaiiT/zbeF5EwAT/RhjIwBjmomrZuK+d4yUsZSI31rZUPKdzHJSvO4q+ukFEnSvrUnx5ZWUsdwVP123z77wUIB+wbup9qwFacl7KNChu+hPP69UiT59t0XQljkWyH6Id8K0Q/5Voh+yLdC9EO+FaIfvz5MXK8dhPFfAAAAAElFTkSuQmCC)
解决代码及点评
- <pre code_snippet_id="112604" snippet_file_name="blog_20131215_1_9254898" class="cpp" name="code"><pre code_snippet_id="112604" snippet_file_name="blog_20131215_1_9254898" class="cpp" name="code"><pre code_snippet_id="112604" snippet_file_name="blog_20131215_1_9254898" class="cpp" name="code"><pre code_snippet_id="112604" snippet_file_name="blog_20131215_1_9254898" name="code" class="cpp">/*
- 在一个矩阵中,找到和最大的【2*2】的子矩阵
- */
-
- #include <iostream>
- using namespace std;
-
- const int N = 4;
- int main()
- {
- int index[2] = { 0 };
- int max = 0;
-
- // 待分析数据
- int a[N][N] = { { 4, 5, 1, 6 }, { 1, 7, 10, 1 }, { 1, 5, 2, 2 }, { 12, 0, 3, 15 } };
-
- // 遍历所有二维数据组
- for (int i = 0; i < N - 1; i++)
- {
- for (int j = 0; j<N - 1; j++)
- {
- // 对二维数组求和,如果大于原来的max,则取代之
- if (a[j] + a[i + 1][j] + a[j + 1] + a[i + 1][j + 1]>max)
- {
- // 取代max,并保存坐标
- max = a[j] + a[i + 1][j] + a[j + 1] + a[i + 1][j + 1];
- index[0] = i;
- index[1] = j;
- }
- }
- }
-
- // 输出信息
- cout << "max " << max << endl;
- cout << a[index[0]][index[1]] << " " << a[index[0] + 1][index[1]] << " " << a[index[0]][index[1] + 1] << " " << a[index[0] + 1][index[1] + 1];
-
-
- system("pause");
- return 0;
- }
-
- </pre><br><br></pre></pre></pre>
代码下载及其运行代码下载地址:http://download.csdn.net/detail/yincheng01/6704519
解压密码:c.itcast.cn
下载代码并解压后,用VC2013打开interview.sln,并设置对应的启动项目后,点击运行即可,具体步骤如下:
1)设置启动项目:右键点击解决方案,在弹出菜单中选择“设置启动项目”
2)在下拉框中选择相应项目,项目名和博客编号一致
3)点击“本地Windows调试器”运行
程序运行结果
欢迎光临 滴水逆向联盟 (http://dtdebug.com/) |
Powered by Discuz! X3.2 |