1.Hello,World程序
#include <iostream>
int main()
{
using namespace std;
cout << "Hello,World!\n";
return 0;
}
(报错:无法打开源文件ctype.h等477个error,立即推:放弃编程)
后来发现是sdk版本问题,需要在"工具->获取工具和功能"打开安装管理器,会发现有多个可选的SDK,添加下载Windows 10 SDK 10.0.20348.0,成功!
输出结果
2.简单的输入计算并输出程序
#include <iostream>
int main()
{
using namespace std;
int num1 = 0, num2 = 0, sum = 0;
cout << "请依次输入你要相乘的两个数\n";
cin >> num1 >> num2;
sum = num1 * num2;
cout << "计算结果为" << sum;
return 0;
}
输出结果
3.背包问题
先上题目吧
看到题目之后一脸懵,于是开始听闫佬的课,记录一下听课过程。
首先学习了朴素算法,题目中寻找最大价值的过程,细化到每个物体,就是放与不放的选择。共有2^N中选择,当然其中有很多是不满足条件的(即总体积不超过背包容积V)
可将第i次选择细致地想一想,即:在前(i-1)次选择做好之后,当前状态下,选择放第i个物体和不放第i个物体中,可以取得更大利益的一种。
写成编程语句就是:
#include <iostream>
using namespace std;
int i = 0;
int j = 0;
const int N = 1010;
int v[N], w[N];
int f[N][N];
int n, m;
int main()
{
cin >> n >> m;
for (i = 1; i <= n; i++)cin >> v[i] >> w[i];
for (i = 1; i <= n; i++)
{
for (j = 0; j <= m; j++)
{
f[i][j] = f[i - 1][j];
if (j >= v[i])f[i][j] = max(f[i][j], f[i - 1][j-v[i] ]+ w[i]);
}
}
cout << f[n][m]<<endl;
return 0;
}