'commit'
This commit is contained in:
0
C++专题课程/动态规划/.keep
Normal file
0
C++专题课程/动态规划/.keep
Normal file
6
C++专题课程/动态规划/分硬币问题/TestProject/.idea/encodings.xml
generated
Normal file
6
C++专题课程/动态规划/分硬币问题/TestProject/.idea/encodings.xml
generated
Normal file
@@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="Encoding">
|
||||
<file url="file://$PROJECT_DIR$/1_zhaolingqian.cpp" charset="GBK" />
|
||||
</component>
|
||||
</project>
|
||||
7
C++专题课程/动态规划/分硬币问题/TestProject/.idea/misc.xml
generated
Normal file
7
C++专题课程/动态规划/分硬币问题/TestProject/.idea/misc.xml
generated
Normal file
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="CMakeWorkspace" PROJECT_DIR="$PROJECT_DIR$" />
|
||||
<component name="JavaScriptSettings">
|
||||
<option name="languageLevel" value="ES6" />
|
||||
</component>
|
||||
</project>
|
||||
8
C++专题课程/动态规划/分硬币问题/TestProject/.idea/modules.xml
generated
Normal file
8
C++专题课程/动态规划/分硬币问题/TestProject/.idea/modules.xml
generated
Normal file
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/TestProject.iml" filepath="$PROJECT_DIR$/.idea/TestProject.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
||||
75
C++专题课程/动态规划/分硬币问题/TestProject/.idea/workspace.xml
generated
Normal file
75
C++专题课程/动态规划/分硬币问题/TestProject/.idea/workspace.xml
generated
Normal file
@@ -0,0 +1,75 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="CMakeRunConfigurationManager" shouldGenerate="true" shouldDeleteObsolete="true">
|
||||
<generated>
|
||||
<config projectName="TestProject" targetName="1_zhaolingqian" />
|
||||
<config projectName="TestProject" targetName="2_zhaolingqian_db" />
|
||||
</generated>
|
||||
</component>
|
||||
<component name="CMakeSettings">
|
||||
<configurations>
|
||||
<configuration PROFILE_NAME="Debug" CONFIG_NAME="Debug" />
|
||||
</configurations>
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="df4bc3d7-59d5-428d-a2a7-dfc433d7a910" name="Default Changelist" comment="" />
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="ClangdSettings">
|
||||
<option name="formatViaClangd" value="false" />
|
||||
</component>
|
||||
<component name="ExecutionTargetManager" SELECTED_TARGET="CMakeBuildProfile:Debug" />
|
||||
<component name="ProjectId" id="1TK7cLTmH70cGWECJ4MYw6uVItX" />
|
||||
<component name="PropertiesComponent">
|
||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||
</component>
|
||||
<component name="RunDashboard">
|
||||
<option name="ruleStates">
|
||||
<list>
|
||||
<RuleState>
|
||||
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
<RuleState>
|
||||
<option name="name" value="StatusDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="RunManager" selected="CMake Application.2_zhaolingqian_db">
|
||||
<configuration name="1_zhaolingqian" type="CMakeRunConfiguration" factoryName="Application" PASS_PARENT_ENVS_2="true" PROJECT_NAME="TestProject" TARGET_NAME="1_zhaolingqian" CONFIG_NAME="Debug" RUN_TARGET_PROJECT_NAME="TestProject" RUN_TARGET_NAME="1_zhaolingqian">
|
||||
<method v="2">
|
||||
<option name="com.jetbrains.cidr.execution.CidrBuildBeforeRunTaskProvider$BuildBeforeRunTask" enabled="true" />
|
||||
</method>
|
||||
</configuration>
|
||||
<configuration name="2_zhaolingqian_db" type="CMakeRunConfiguration" factoryName="Application" PASS_PARENT_ENVS_2="true" PROJECT_NAME="TestProject" TARGET_NAME="2_zhaolingqian_db" CONFIG_NAME="Debug" RUN_TARGET_PROJECT_NAME="TestProject" RUN_TARGET_NAME="2_zhaolingqian_db">
|
||||
<method v="2">
|
||||
<option name="com.jetbrains.cidr.execution.CidrBuildBeforeRunTaskProvider$BuildBeforeRunTask" enabled="true" />
|
||||
</method>
|
||||
</configuration>
|
||||
<list>
|
||||
<item itemvalue="CMake Application.1_zhaolingqian" />
|
||||
<item itemvalue="CMake Application.2_zhaolingqian_db" />
|
||||
</list>
|
||||
</component>
|
||||
<component name="SvnConfiguration">
|
||||
<configuration />
|
||||
</component>
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="df4bc3d7-59d5-428d-a2a7-dfc433d7a910" name="Default Changelist" comment="" />
|
||||
<created>1573197012105</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1573197012105</updated>
|
||||
<workItem from="1573197016777" duration="1064000" />
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
<option name="version" value="1" />
|
||||
</component>
|
||||
</project>
|
||||
49
C++专题课程/动态规划/分硬币问题/TestProject/1_zhaolingqian.cpp
Normal file
49
C++专题课程/动态规划/分硬币问题/TestProject/1_zhaolingqian.cpp
Normal file
@@ -0,0 +1,49 @@
|
||||
#include <iostream>
|
||||
|
||||
using namespace std;
|
||||
|
||||
//һ<><D2BB>
|
||||
#define ONEFEN 1
|
||||
//<2F><><EFBFBD><EFBFBD>
|
||||
#define FIVEFEN 5
|
||||
//ʮ<><CAAE>
|
||||
#define TENFEN 10
|
||||
//<2F><>ʮ<EFBFBD><CAAE><EFBFBD><EFBFBD>
|
||||
#define TWENTYFINEFEN 25
|
||||
|
||||
//<2F><>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>̰<EFBFBD>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD>Ǵ<EFBFBD><C7B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD>Ϊ<EFBFBD>ο<EFBFBD><CEBF><EFBFBD>
|
||||
// https://mp.weixin.qq.com/s/978Tdplj3IaSG2dc-5F-aw
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD><CBA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>Ҹ<EFBFBD><D2B8>˿<EFBFBD>41<34><31>Ǯ<EFBFBD><C7AE><EFBFBD><EFBFBD><EFBFBD>ڵĻ<DAB5><C4BB><EFBFBD>ֻ<EFBFBD><D6BB> 25 <20>֡<EFBFBD>20<32>֡<EFBFBD>10 <20>֡<EFBFBD>5 <20>ֺ<EFBFBD> 1 <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӳ<EFBFBD>ң<EFBFBD><D2A3><EFBFBD><EFBFBD><EFBFBD>ô<EFBFBD>죿
|
||||
|
||||
int main() {
|
||||
//<2F>ܺ<EFBFBD>41
|
||||
int sum_money = 41;
|
||||
//ÿ<><C3BF><EFBFBD><EFBFBD><EFBFBD>ٸ<EFBFBD><D9B8><EFBFBD>
|
||||
int num_25 = 0, num_10 = 0, num_5 = 0, num_1 = 0;
|
||||
|
||||
//<2F><><EFBFBD>ϳ<EFBFBD><CFB3><EFBFBD>ÿһ<C3BF><D2BB>Ӳ<EFBFBD><D3B2>
|
||||
while (sum_money >= TWENTYFINEFEN) {
|
||||
num_25++;
|
||||
sum_money -= TWENTYFINEFEN;
|
||||
}
|
||||
while (sum_money >= TENFEN) {
|
||||
num_10++;
|
||||
sum_money -= TENFEN;
|
||||
}
|
||||
while (sum_money >= FIVEFEN) {
|
||||
num_5++;
|
||||
sum_money -= FIVEFEN;
|
||||
}
|
||||
while (sum_money >= ONEFEN) {
|
||||
num_1++;
|
||||
sum_money -= ONEFEN;
|
||||
}
|
||||
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
cout << "25<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << num_25 << endl;
|
||||
cout << "10<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << num_10 << endl;
|
||||
cout << "5<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << num_5 << endl;
|
||||
cout << "1<EFBFBD><EFBFBD>Ӳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << num_1 << endl;
|
||||
|
||||
return 0;
|
||||
}
|
||||
5
C++专题课程/动态规划/分硬币问题/TestProject/2.txt
Normal file
5
C++专题课程/动态规划/分硬币问题/TestProject/2.txt
Normal file
@@ -0,0 +1,5 @@
|
||||
3
|
||||
1 3
|
||||
2 3
|
||||
5 3
|
||||
18
|
||||
47
C++专题课程/动态规划/分硬币问题/TestProject/2_zhaolingqian_db.cpp
Normal file
47
C++专题课程/动态规划/分硬币问题/TestProject/2_zhaolingqian_db.cpp
Normal file
@@ -0,0 +1,47 @@
|
||||
#include <bits/stdc++.h>
|
||||
|
||||
using namespace std;
|
||||
|
||||
//极限值,表示不可达
|
||||
#define INF 0x3f3f3f3f
|
||||
|
||||
int dp[20020];
|
||||
|
||||
/**
|
||||
* 设有n种不同面值的硬币,各硬币的面值存于数组T[1:n]中。现要用这些面值的硬币来找钱。可以使用的各种面值的硬币个数存于数组Coins[1:n]中。
|
||||
对任意钱数0≤m≤20001,设计一个用最少硬币找钱m的方法。
|
||||
对于给定的1≤n≤10,硬币面值数组T和可以使用的各种面值的硬币个数数组Coins,以及钱数m,0≤m≤20001,计算找钱m的最少硬币数。
|
||||
Input
|
||||
输入数据第一行中只有1个整数给出n的值,第2行起每行2个数,分别是T[j]和Coins[j]。最后1行是要找的钱数m。
|
||||
Output
|
||||
输出数据只有一个整数,表示计算出的最少硬币数。问题无解时输出-1。
|
||||
*/
|
||||
int main() {
|
||||
//读取数据文件
|
||||
freopen("../2.txt", "r", stdin);
|
||||
|
||||
int n, m;
|
||||
//初始化数组数据
|
||||
cin >> n;
|
||||
int coins[n]; //硬币个数
|
||||
int value[n]; //硬币面值
|
||||
for (int i = 0; i < n; i++) {
|
||||
cin >> value[i] >> coins[i];
|
||||
}
|
||||
|
||||
//初始化DP表
|
||||
cin >> m;
|
||||
for (int i = 1; i <= m; i++) {
|
||||
dp[i] = INF; //赋极大值,表示不可达
|
||||
}
|
||||
|
||||
//利用动态规划进行填表
|
||||
for (int i = 0; i < n; i++) {
|
||||
for (int j = 1; j <= coins[i]; j++) { //遍历硬币数量
|
||||
for (int k = m; k >= value[i]; k--) {
|
||||
dp[k] = min(dp[k], dp[k - value[i]] + 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
cout << (dp[m] < m ? dp[m] : -1) << endl;
|
||||
}
|
||||
7
C++专题课程/动态规划/分硬币问题/TestProject/CMakeLists.txt
Normal file
7
C++专题课程/动态规划/分硬币问题/TestProject/CMakeLists.txt
Normal file
@@ -0,0 +1,7 @@
|
||||
cmake_minimum_required(VERSION 3.15)
|
||||
project(TestProject)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
|
||||
add_executable(1_zhaolingqian 1_zhaolingqian.cpp )
|
||||
add_executable(2_zhaolingqian_db 2_zhaolingqian_db.cpp)
|
||||
410
C++专题课程/动态规划/分硬币问题/TestProject/cmake-build-debug/CMakeCache.txt
Normal file
410
C++专题课程/动态规划/分硬币问题/TestProject/cmake-build-debug/CMakeCache.txt
Normal file
File diff suppressed because one or more lines are too long
221
C++专题课程/动态规划/分硬币问题/TestProject/cmake-build-debug/Makefile
Normal file
221
C++专题课程/动态规划/分硬币问题/TestProject/cmake-build-debug/Makefile
Normal file
@@ -0,0 +1,221 @@
|
||||
# CMAKE generated file: DO NOT EDIT!
|
||||
# Generated by "MinGW Makefiles" Generator, CMake Version 3.15
|
||||
|
||||
# Default target executed when no arguments are given to make.
|
||||
default_target: all
|
||||
|
||||
.PHONY : default_target
|
||||
|
||||
# Allow only one "make -f Makefile2" at a time, but pass parallelism.
|
||||
.NOTPARALLEL:
|
||||
|
||||
|
||||
#=============================================================================
|
||||
# Special targets provided by cmake.
|
||||
|
||||
# Disable implicit rules so canonical targets will work.
|
||||
.SUFFIXES:
|
||||
|
||||
|
||||
# Remove some rules from gmake that .SUFFIXES does not remove.
|
||||
SUFFIXES =
|
||||
|
||||
.SUFFIXES: .hpux_make_needs_suffix_list
|
||||
|
||||
|
||||
# Suppress display of executed commands.
|
||||
$(VERBOSE).SILENT:
|
||||
|
||||
|
||||
# A target that is always out of date.
|
||||
cmake_force:
|
||||
|
||||
.PHONY : cmake_force
|
||||
|
||||
#=============================================================================
|
||||
# Set environment variables for the build.
|
||||
|
||||
SHELL = cmd.exe
|
||||
|
||||
# The CMake executable.
|
||||
CMAKE_COMMAND = "C:\Program Files\JetBrains\CLion 2019.2.4\bin\cmake\win\bin\cmake.exe"
|
||||
|
||||
# The command to remove a file.
|
||||
RM = "C:\Program Files\JetBrains\CLion 2019.2.4\bin\cmake\win\bin\cmake.exe" -E remove -f
|
||||
|
||||
# Escaping for special characters.
|
||||
EQUALS = =
|
||||
|
||||
# The top-level source directory on which CMake was run.
|
||||
CMAKE_SOURCE_DIR = C:\Users\Administrator\CLionProjects\TestProject
|
||||
|
||||
# The top-level build directory on which CMake was run.
|
||||
CMAKE_BINARY_DIR = C:\Users\Administrator\CLionProjects\TestProject\cmake-build-debug
|
||||
|
||||
#=============================================================================
|
||||
# Targets provided globally by CMake.
|
||||
|
||||
# Special rule for the target edit_cache
|
||||
edit_cache:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..."
|
||||
"C:\Program Files\JetBrains\CLion 2019.2.4\bin\cmake\win\bin\cmake.exe" -E echo "No interactive CMake dialog available."
|
||||
.PHONY : edit_cache
|
||||
|
||||
# Special rule for the target edit_cache
|
||||
edit_cache/fast: edit_cache
|
||||
|
||||
.PHONY : edit_cache/fast
|
||||
|
||||
# Special rule for the target rebuild_cache
|
||||
rebuild_cache:
|
||||
@$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
|
||||
"C:\Program Files\JetBrains\CLion 2019.2.4\bin\cmake\win\bin\cmake.exe" -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
|
||||
.PHONY : rebuild_cache
|
||||
|
||||
# Special rule for the target rebuild_cache
|
||||
rebuild_cache/fast: rebuild_cache
|
||||
|
||||
.PHONY : rebuild_cache/fast
|
||||
|
||||
# The main all target
|
||||
all: cmake_check_build_system
|
||||
$(CMAKE_COMMAND) -E cmake_progress_start C:\Users\Administrator\CLionProjects\TestProject\cmake-build-debug\CMakeFiles C:\Users\Administrator\CLionProjects\TestProject\cmake-build-debug\CMakeFiles\progress.marks
|
||||
$(MAKE) -f CMakeFiles\Makefile2 all
|
||||
$(CMAKE_COMMAND) -E cmake_progress_start C:\Users\Administrator\CLionProjects\TestProject\cmake-build-debug\CMakeFiles 0
|
||||
.PHONY : all
|
||||
|
||||
# The main clean target
|
||||
clean:
|
||||
$(MAKE) -f CMakeFiles\Makefile2 clean
|
||||
.PHONY : clean
|
||||
|
||||
# The main clean target
|
||||
clean/fast: clean
|
||||
|
||||
.PHONY : clean/fast
|
||||
|
||||
# Prepare targets for installation.
|
||||
preinstall: all
|
||||
$(MAKE) -f CMakeFiles\Makefile2 preinstall
|
||||
.PHONY : preinstall
|
||||
|
||||
# Prepare targets for installation.
|
||||
preinstall/fast:
|
||||
$(MAKE) -f CMakeFiles\Makefile2 preinstall
|
||||
.PHONY : preinstall/fast
|
||||
|
||||
# clear depends
|
||||
depend:
|
||||
$(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles\Makefile.cmake 1
|
||||
.PHONY : depend
|
||||
|
||||
#=============================================================================
|
||||
# Target rules for targets named 1_zhaolingqian
|
||||
|
||||
# Build rule for target.
|
||||
1_zhaolingqian: cmake_check_build_system
|
||||
$(MAKE) -f CMakeFiles\Makefile2 1_zhaolingqian
|
||||
.PHONY : 1_zhaolingqian
|
||||
|
||||
# fast build rule for target.
|
||||
1_zhaolingqian/fast:
|
||||
$(MAKE) -f CMakeFiles\1_zhaolingqian.dir\build.make CMakeFiles/1_zhaolingqian.dir/build
|
||||
.PHONY : 1_zhaolingqian/fast
|
||||
|
||||
#=============================================================================
|
||||
# Target rules for targets named 2_zhaolingqian_db
|
||||
|
||||
# Build rule for target.
|
||||
2_zhaolingqian_db: cmake_check_build_system
|
||||
$(MAKE) -f CMakeFiles\Makefile2 2_zhaolingqian_db
|
||||
.PHONY : 2_zhaolingqian_db
|
||||
|
||||
# fast build rule for target.
|
||||
2_zhaolingqian_db/fast:
|
||||
$(MAKE) -f CMakeFiles\2_zhaolingqian_db.dir\build.make CMakeFiles/2_zhaolingqian_db.dir/build
|
||||
.PHONY : 2_zhaolingqian_db/fast
|
||||
|
||||
1_zhaolingqian.obj: 1_zhaolingqian.cpp.obj
|
||||
|
||||
.PHONY : 1_zhaolingqian.obj
|
||||
|
||||
# target to build an object file
|
||||
1_zhaolingqian.cpp.obj:
|
||||
$(MAKE) -f CMakeFiles\1_zhaolingqian.dir\build.make CMakeFiles/1_zhaolingqian.dir/1_zhaolingqian.cpp.obj
|
||||
.PHONY : 1_zhaolingqian.cpp.obj
|
||||
|
||||
1_zhaolingqian.i: 1_zhaolingqian.cpp.i
|
||||
|
||||
.PHONY : 1_zhaolingqian.i
|
||||
|
||||
# target to preprocess a source file
|
||||
1_zhaolingqian.cpp.i:
|
||||
$(MAKE) -f CMakeFiles\1_zhaolingqian.dir\build.make CMakeFiles/1_zhaolingqian.dir/1_zhaolingqian.cpp.i
|
||||
.PHONY : 1_zhaolingqian.cpp.i
|
||||
|
||||
1_zhaolingqian.s: 1_zhaolingqian.cpp.s
|
||||
|
||||
.PHONY : 1_zhaolingqian.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
1_zhaolingqian.cpp.s:
|
||||
$(MAKE) -f CMakeFiles\1_zhaolingqian.dir\build.make CMakeFiles/1_zhaolingqian.dir/1_zhaolingqian.cpp.s
|
||||
.PHONY : 1_zhaolingqian.cpp.s
|
||||
|
||||
2_zhaolingqian_db.obj: 2_zhaolingqian_db.cpp.obj
|
||||
|
||||
.PHONY : 2_zhaolingqian_db.obj
|
||||
|
||||
# target to build an object file
|
||||
2_zhaolingqian_db.cpp.obj:
|
||||
$(MAKE) -f CMakeFiles\2_zhaolingqian_db.dir\build.make CMakeFiles/2_zhaolingqian_db.dir/2_zhaolingqian_db.cpp.obj
|
||||
.PHONY : 2_zhaolingqian_db.cpp.obj
|
||||
|
||||
2_zhaolingqian_db.i: 2_zhaolingqian_db.cpp.i
|
||||
|
||||
.PHONY : 2_zhaolingqian_db.i
|
||||
|
||||
# target to preprocess a source file
|
||||
2_zhaolingqian_db.cpp.i:
|
||||
$(MAKE) -f CMakeFiles\2_zhaolingqian_db.dir\build.make CMakeFiles/2_zhaolingqian_db.dir/2_zhaolingqian_db.cpp.i
|
||||
.PHONY : 2_zhaolingqian_db.cpp.i
|
||||
|
||||
2_zhaolingqian_db.s: 2_zhaolingqian_db.cpp.s
|
||||
|
||||
.PHONY : 2_zhaolingqian_db.s
|
||||
|
||||
# target to generate assembly for a file
|
||||
2_zhaolingqian_db.cpp.s:
|
||||
$(MAKE) -f CMakeFiles\2_zhaolingqian_db.dir\build.make CMakeFiles/2_zhaolingqian_db.dir/2_zhaolingqian_db.cpp.s
|
||||
.PHONY : 2_zhaolingqian_db.cpp.s
|
||||
|
||||
# Help Target
|
||||
help:
|
||||
@echo The following are some of the valid targets for this Makefile:
|
||||
@echo ... all (the default if no target is provided)
|
||||
@echo ... clean
|
||||
@echo ... depend
|
||||
@echo ... 1_zhaolingqian
|
||||
@echo ... 2_zhaolingqian_db
|
||||
@echo ... edit_cache
|
||||
@echo ... rebuild_cache
|
||||
@echo ... 1_zhaolingqian.obj
|
||||
@echo ... 1_zhaolingqian.i
|
||||
@echo ... 1_zhaolingqian.s
|
||||
@echo ... 2_zhaolingqian_db.obj
|
||||
@echo ... 2_zhaolingqian_db.i
|
||||
@echo ... 2_zhaolingqian_db.s
|
||||
.PHONY : help
|
||||
|
||||
|
||||
|
||||
#=============================================================================
|
||||
# Special targets to cleanup operation of make.
|
||||
|
||||
# Special rule to run CMake to check the build system integrity.
|
||||
# No rule that depends on this can have commands that come from listfiles
|
||||
# because they might be regenerated.
|
||||
cmake_check_build_system:
|
||||
$(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles\Makefile.cmake 0
|
||||
.PHONY : cmake_check_build_system
|
||||
|
||||
135
C++专题课程/动态规划/分硬币问题/TestProject/cmake-build-debug/TestProject.cbp
Normal file
135
C++专题课程/动态规划/分硬币问题/TestProject/cmake-build-debug/TestProject.cbp
Normal file
@@ -0,0 +1,135 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<CodeBlocks_project_file>
|
||||
<FileVersion major="1" minor="6"/>
|
||||
<Project>
|
||||
<Option title="TestProject"/>
|
||||
<Option makefile_is_custom="1"/>
|
||||
<Option compiler="gcc"/>
|
||||
<Option virtualFolders="CMake Files\;"/>
|
||||
<Build>
|
||||
<Target title="all">
|
||||
<Option working_dir="C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug"/>
|
||||
<Option type="4"/>
|
||||
<MakeCommands>
|
||||
<Build command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 all"/>
|
||||
<CompileFile command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 "$file""/>
|
||||
<Clean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
<DistClean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
</MakeCommands>
|
||||
</Target>
|
||||
<Target title="1_zhaolingqian">
|
||||
<Option output="C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/1_zhaolingqian.exe" prefix_auto="0" extension_auto="0"/>
|
||||
<Option working_dir="C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug"/>
|
||||
<Option object_output="./"/>
|
||||
<Option type="1"/>
|
||||
<Option compiler="gcc"/>
|
||||
<Compiler>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"/>
|
||||
</Compiler>
|
||||
<MakeCommands>
|
||||
<Build command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 1_zhaolingqian"/>
|
||||
<CompileFile command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 "$file""/>
|
||||
<Clean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
<DistClean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
</MakeCommands>
|
||||
</Target>
|
||||
<Target title="1_zhaolingqian/fast">
|
||||
<Option output="C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/1_zhaolingqian.exe" prefix_auto="0" extension_auto="0"/>
|
||||
<Option working_dir="C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug"/>
|
||||
<Option object_output="./"/>
|
||||
<Option type="1"/>
|
||||
<Option compiler="gcc"/>
|
||||
<Compiler>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"/>
|
||||
</Compiler>
|
||||
<MakeCommands>
|
||||
<Build command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 1_zhaolingqian/fast"/>
|
||||
<CompileFile command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 "$file""/>
|
||||
<Clean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
<DistClean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
</MakeCommands>
|
||||
</Target>
|
||||
<Target title="2_zhaolingqian_db">
|
||||
<Option output="C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/2_zhaolingqian_db.exe" prefix_auto="0" extension_auto="0"/>
|
||||
<Option working_dir="C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug"/>
|
||||
<Option object_output="./"/>
|
||||
<Option type="1"/>
|
||||
<Option compiler="gcc"/>
|
||||
<Compiler>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"/>
|
||||
</Compiler>
|
||||
<MakeCommands>
|
||||
<Build command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 2_zhaolingqian_db"/>
|
||||
<CompileFile command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 "$file""/>
|
||||
<Clean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
<DistClean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
</MakeCommands>
|
||||
</Target>
|
||||
<Target title="2_zhaolingqian_db/fast">
|
||||
<Option output="C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/2_zhaolingqian_db.exe" prefix_auto="0" extension_auto="0"/>
|
||||
<Option working_dir="C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug"/>
|
||||
<Option object_output="./"/>
|
||||
<Option type="1"/>
|
||||
<Option compiler="gcc"/>
|
||||
<Compiler>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/x86_64-w64-mingw32"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/backward"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/include-fixed"/>
|
||||
<Add directory="E:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/include"/>
|
||||
</Compiler>
|
||||
<MakeCommands>
|
||||
<Build command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 2_zhaolingqian_db/fast"/>
|
||||
<CompileFile command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 "$file""/>
|
||||
<Clean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
<DistClean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
</MakeCommands>
|
||||
</Target>
|
||||
<Target title="edit_cache">
|
||||
<Option working_dir="C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug"/>
|
||||
<Option type="4"/>
|
||||
<MakeCommands>
|
||||
<Build command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 edit_cache"/>
|
||||
<CompileFile command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 "$file""/>
|
||||
<Clean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
<DistClean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
</MakeCommands>
|
||||
</Target>
|
||||
<Target title="rebuild_cache">
|
||||
<Option working_dir="C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug"/>
|
||||
<Option type="4"/>
|
||||
<MakeCommands>
|
||||
<Build command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 rebuild_cache"/>
|
||||
<CompileFile command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 "$file""/>
|
||||
<Clean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
<DistClean command="E:/mingw64/bin/mingw32-make.exe -f "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/Makefile" VERBOSE=1 clean"/>
|
||||
</MakeCommands>
|
||||
</Target>
|
||||
</Build>
|
||||
<Unit filename="C:/Users/Administrator/CLionProjects/TestProject/1_zhaolingqian.cpp">
|
||||
<Option target="1_zhaolingqian"/>
|
||||
</Unit>
|
||||
<Unit filename="C:/Users/Administrator/CLionProjects/TestProject/2_zhaolingqian_db.cpp">
|
||||
<Option target="2_zhaolingqian_db"/>
|
||||
</Unit>
|
||||
<Unit filename="C:/Users/Administrator/CLionProjects/TestProject/CMakeLists.txt">
|
||||
<Option virtualFolder="CMake Files\"/>
|
||||
</Unit>
|
||||
</Project>
|
||||
</CodeBlocks_project_file>
|
||||
@@ -0,0 +1,44 @@
|
||||
# Install script for directory: C:/Users/Administrator/CLionProjects/TestProject
|
||||
|
||||
# Set the install prefix
|
||||
if(NOT DEFINED CMAKE_INSTALL_PREFIX)
|
||||
set(CMAKE_INSTALL_PREFIX "C:/Program Files (x86)/TestProject")
|
||||
endif()
|
||||
string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")
|
||||
|
||||
# Set the install configuration name.
|
||||
if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME)
|
||||
if(BUILD_TYPE)
|
||||
string(REGEX REPLACE "^[^A-Za-z0-9_]+" ""
|
||||
CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}")
|
||||
else()
|
||||
set(CMAKE_INSTALL_CONFIG_NAME "Debug")
|
||||
endif()
|
||||
message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"")
|
||||
endif()
|
||||
|
||||
# Set the component getting installed.
|
||||
if(NOT CMAKE_INSTALL_COMPONENT)
|
||||
if(COMPONENT)
|
||||
message(STATUS "Install component: \"${COMPONENT}\"")
|
||||
set(CMAKE_INSTALL_COMPONENT "${COMPONENT}")
|
||||
else()
|
||||
set(CMAKE_INSTALL_COMPONENT)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Is this installation the result of a crosscompile?
|
||||
if(NOT DEFINED CMAKE_CROSSCOMPILING)
|
||||
set(CMAKE_CROSSCOMPILING "FALSE")
|
||||
endif()
|
||||
|
||||
if(CMAKE_INSTALL_COMPONENT)
|
||||
set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt")
|
||||
else()
|
||||
set(CMAKE_INSTALL_MANIFEST "install_manifest.txt")
|
||||
endif()
|
||||
|
||||
string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT
|
||||
"${CMAKE_INSTALL_MANIFEST_FILES}")
|
||||
file(WRITE "C:/Users/Administrator/CLionProjects/TestProject/cmake-build-debug/${CMAKE_INSTALL_MANIFEST}"
|
||||
"${CMAKE_INSTALL_MANIFEST_CONTENT}")
|
||||
32
C++专题课程/动态规划/动态规划-1-01背包.cpp
Normal file
32
C++专题课程/动态规划/动态规划-1-01背包.cpp
Normal file
@@ -0,0 +1,32 @@
|
||||
#include<bits/stdc++.h>
|
||||
|
||||
using namespace std;
|
||||
|
||||
/*
|
||||
֪ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD>̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD>0-1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
<EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲο<EFBFBD><EFBFBD><EFBFBD>
|
||||
https://www.cnblogs.com/aiguona/p/7274222.html
|
||||
*/
|
||||
|
||||
using namespace std;
|
||||
int w[105], val[105];
|
||||
int dp[105][1005];
|
||||
|
||||
int main() {
|
||||
int t, m;
|
||||
cin >> t >> m;
|
||||
for (int i = 1; i <= m; i++)
|
||||
cin >> w[i] >> val[i];
|
||||
|
||||
for (int i = 1; i <= m; i++) //<2F><>Ʒ
|
||||
for (int j = t; j >= 0; j--) //<2F><><EFBFBD><EFBFBD>
|
||||
{
|
||||
if (j >= w[i])
|
||||
dp[i][j] = max(dp[i - 1][j - w[i]] + val[i], dp[i - 1][j]);
|
||||
else
|
||||
dp[i][j] = dp[i - 1][j];
|
||||
}
|
||||
cout << dp[m][t] << endl;
|
||||
return 0;
|
||||
}
|
||||
27
C++专题课程/动态规划/动态规划-2-完全背包.cpp
Normal file
27
C++专题课程/动态规划/动态规划-2-完全背包.cpp
Normal file
@@ -0,0 +1,27 @@
|
||||
#include<bits/stdc++.h>
|
||||
|
||||
using namespace std;
|
||||
|
||||
/*
|
||||
֪ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD>̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
<EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲο<EFBFBD><EFBFBD><EFBFBD>
|
||||
https://www.cnblogs.com/aiguona/p/7274876.html
|
||||
*/
|
||||
|
||||
using namespace std;
|
||||
|
||||
int w[300], c[300], f[300010];
|
||||
int V, n;
|
||||
|
||||
int main() {
|
||||
scanf("%d%d", &V, &n);
|
||||
for (int i = 1; i <= n; i++) {
|
||||
scanf("%d%d", &w[i], &c[i]);
|
||||
}
|
||||
for (int i = 1; i <= n; i++)
|
||||
for (int j = w[i]; j <= V; j++)//ע<><D7A2><EFBFBD>˴<EFBFBD><CBB4><EFBFBD><EFBFBD><EFBFBD>0-1<><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ˳<CEAA><CBB3><EFBFBD><EFBFBD>0-1<><31><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>
|
||||
f[j] = max(f[j], f[j - w[i]] + c[i]);
|
||||
printf("max=%d\n", f[V]);
|
||||
return 0;
|
||||
}
|
||||
67
C++专题课程/动态规划/动态规划-3-多重背包.cpp
Normal file
67
C++专题课程/动态规划/动态规划-3-多重背包.cpp
Normal file
@@ -0,0 +1,67 @@
|
||||
#include<bits/stdc++.h>
|
||||
|
||||
using namespace std;
|
||||
|
||||
/*
|
||||
֪ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD>̬<EFBFBD>滮<EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
<EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲο<EFBFBD><EFBFBD><EFBFBD>
|
||||
https://www.cnblogs.com/aiguona/p/7274876.html
|
||||
*/
|
||||
#define MAX 1000000
|
||||
using namespace std;
|
||||
|
||||
int dp[MAX]; //<2F>洢<EFBFBD><E6B4A2><EFBFBD><EFBFBD><F3B1B3B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܴ<EFBFBD><DCB4><EFBFBD><EFBFBD><EFBFBD>
|
||||
int value[MAX], weight[MAX], number[MAX];//<2F>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD>ļ<EFBFBD>ֵ<EFBFBD><D6B5>ÿһ<C3BF><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD>
|
||||
int bag;
|
||||
|
||||
void ZeroOnePack(int weight, int value)//01<30><31><EFBFBD><EFBFBD>
|
||||
{
|
||||
int i;
|
||||
for (i = bag; i >= weight; i--) {
|
||||
dp[i] = max(dp[i], dp[i - weight] + value);
|
||||
}
|
||||
}
|
||||
|
||||
void CompletePack(int weight, int value)//<2F><>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>
|
||||
{
|
||||
int i;
|
||||
for (i = weight; i <= bag; i++) {
|
||||
dp[i] = max(dp[i], dp[i - weight] + value);
|
||||
}
|
||||
}
|
||||
|
||||
void MultiplePack(int weight, int value, int number)//<2F><><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>
|
||||
{
|
||||
if (bag <= number * weight)//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҪС<D2AA><D0A1><EFBFBD><EFBFBD>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1>ȡ<EFBFBD>꣬<EFBFBD>൱<EFBFBD><E0B5B1><EFBFBD><EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD>
|
||||
{
|
||||
CompletePack(weight, value);
|
||||
return;
|
||||
} else//<2F><><EFBFBD><EFBFBD><EFBFBD>ͽ<EFBFBD><CDBD><EFBFBD><EFBFBD>ر<EFBFBD><D8B1><EFBFBD>ת<EFBFBD><D7AA>Ϊ01<30><31><EFBFBD><EFBFBD>
|
||||
{
|
||||
int k = 1;
|
||||
while (k <= number) {
|
||||
ZeroOnePack(k * weight, k * value);
|
||||
number = number - k;
|
||||
k = 2 * k;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ö<EFBFBD><C3B6><EFBFBD><EFBFBD><EFBFBD>˼<EFBFBD><CBBC>
|
||||
}
|
||||
ZeroOnePack(number * weight, number * value);
|
||||
}
|
||||
}
|
||||
|
||||
int main() {
|
||||
int n;
|
||||
while (~scanf("%d%d", &bag, &n)) {
|
||||
int i, sum = 0;
|
||||
for (i = 0; i < n; i++) {
|
||||
scanf("%d", &number[i]);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
scanf("%d", &value[i]);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ <20><><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
|
||||
}
|
||||
memset(dp, 0, sizeof(dp));
|
||||
for (i = 0; i < n; i++) {
|
||||
MultiplePack(value[i], value[i], number[i]);//<2F><><EFBFBD>ö<EFBFBD><C3B6>ر<EFBFBD><D8B1><EFBFBD>,ע<><EFBFBD>ε<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
}
|
||||
cout << dp[bag] << endl;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
33
C++专题课程/动态规划/动态规划-4-最长上升子序列(2).cpp
Normal file
33
C++专题课程/动态规划/动态规划-4-最长上升子序列(2).cpp
Normal file
@@ -0,0 +1,33 @@
|
||||
#include<bits/stdc++.h>
|
||||
/*
|
||||
֪ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2
|
||||
|
||||
<EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲο<EFBFBD><EFBFBD><EFBFBD>
|
||||
https://www.cnblogs.com/aiguona/p/7278141.html
|
||||
*/
|
||||
#define MAXN 40005
|
||||
using namespace std;
|
||||
int arr[MAXN], ans[MAXN], len;
|
||||
|
||||
int main() {
|
||||
int n;
|
||||
int T;
|
||||
cin >> T;
|
||||
while (T--) {
|
||||
cin >> n;
|
||||
for (int i = 1; i <= n; ++i)
|
||||
scanf("%d", &arr[i]);
|
||||
ans[1] = arr[1];
|
||||
len = 1;
|
||||
for (int i = 2; i <= n; ++i) {
|
||||
if (arr[i] > ans[len])
|
||||
ans[++len] = arr[i];
|
||||
else {
|
||||
int pos = lower_bound(ans, ans + len, arr[i]) - ans;
|
||||
ans[pos] = arr[i];
|
||||
}
|
||||
}
|
||||
cout << len << endl;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
29
C++专题课程/动态规划/动态规划-4-最长上升子序列.cpp
Normal file
29
C++专题课程/动态规划/动态规划-4-最长上升子序列.cpp
Normal file
@@ -0,0 +1,29 @@
|
||||
#include<bits/stdc++.h>
|
||||
using namespace std;
|
||||
|
||||
/*
|
||||
֪ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
<EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲο<EFBFBD><EFBFBD><EFBFBD>
|
||||
https://www.cnblogs.com/aiguona/p/7278141.html
|
||||
*/
|
||||
int main() {
|
||||
int n, i, j, num, h[1000], max[1000];
|
||||
while (~scanf("%d", &n)) {
|
||||
num = 1;
|
||||
for (i = 0; i < n; ++i) {
|
||||
scanf("%d", &h[i]);
|
||||
max[i] = 1;
|
||||
}
|
||||
for (i = 1; i < n; ++i)/*<2A><><EFBFBD><EFBFBD><EEB3A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
for (j = 0; j < i; ++j) {
|
||||
/*<2A><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>飬<EFBFBD><E9A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>⣬<EFBFBD><E2A3AC><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEB3A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><D6B1>max[j]<5D><>num<75>Ƚ<EFBFBD>ȡ<EFBFBD>ϴ<EFBFBD>ֵ*/
|
||||
if (h[j] < h[i] && max[j] + 1 > max[i])
|
||||
max[i] = max[j] + 1;
|
||||
if (num < max[i])
|
||||
num = max[i];
|
||||
}
|
||||
printf("%d\n", num);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
35
C++专题课程/动态规划/动态规划-5-最长公共子序列.cpp
Normal file
35
C++专题课程/动态规划/动态规划-5-最长公共子序列.cpp
Normal file
@@ -0,0 +1,35 @@
|
||||
#include<bits/stdc++.h>
|
||||
|
||||
using namespace std;
|
||||
/*
|
||||
֪ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
<EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲο<EFBFBD><EFBFBD><EFBFBD>
|
||||
https://www.cnblogs.com/aiguona/p/7278141.html
|
||||
https://blog.csdn.net/baidu_28312631/article/details/47426445
|
||||
*/
|
||||
char sz1[1000];
|
||||
char sz2[1000];
|
||||
int maxLen[1000][1000];
|
||||
int main(){
|
||||
while( cin >> sz1 >> sz2 ) {
|
||||
int length1 = strlen( sz1);
|
||||
int length2 = strlen( sz2);
|
||||
int nTmp;
|
||||
int i,j;
|
||||
for( i = 0;i <= length1; i ++ )
|
||||
maxLen[i][0] = 0;
|
||||
for( j = 0;j <= length2; j ++ )
|
||||
maxLen[0][j] = 0;
|
||||
for( i = 1;i <= length1;i ++ ) {
|
||||
for( j = 1; j <= length2; j ++ ){
|
||||
if( sz1[i-1] == sz2[j-1] )
|
||||
maxLen[i][j] = maxLen[i-1][j-1] + 1;
|
||||
else
|
||||
maxLen[i][j] = max(maxLen[i][j-1],maxLen[i-1][j]);
|
||||
}
|
||||
}
|
||||
cout << maxLen[length1][length2] << endl;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
44
C++专题课程/动态规划/动态规划-6-部分和问题.cpp
Normal file
44
C++专题课程/动态规划/动态规划-6-部分和问题.cpp
Normal file
@@ -0,0 +1,44 @@
|
||||
#include<bits/stdc++.h>
|
||||
|
||||
using namespace std;
|
||||
/*
|
||||
֪ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֺ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
<EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲο<EFBFBD><EFBFBD><EFBFBD>
|
||||
https://www.cnblogs.com/aiguona/p/9218754.html
|
||||
*/
|
||||
|
||||
int n, k, a[22], b[22];
|
||||
|
||||
bool dfs(int x, int sum) //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ұ<EFBFBD><D2B1><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ɵý<C9B5>
|
||||
{
|
||||
if (sum > k)
|
||||
return false;
|
||||
if (x == n)
|
||||
return sum == k; //<2F><><EFBFBD><EFBFBD>ǰn<C7B0><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD><CBA3><EFBFBD><EFBFBD><EFBFBD>sum=k<>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>
|
||||
if (dfs(x + 1, sum)) {
|
||||
b[x] = 0; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>a[x]<5D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA><30>
|
||||
return true;
|
||||
}
|
||||
if (dfs(x + 1, sum + a[x])) {
|
||||
b[x] = 1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>a[x]<5D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ1<CEAA><31>
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
int main() {
|
||||
while (scanf("%d%d", &n, &k) != EOF) {
|
||||
for (int i = 0; i < n; i++)
|
||||
scanf("%d", &a[i]);
|
||||
if (dfs(0, 0)) {
|
||||
printf("YES\n");
|
||||
for (int i = 0; i < n; i++)
|
||||
if (b[i])
|
||||
printf("%d ", a[i]);
|
||||
printf("\n");
|
||||
} else
|
||||
printf("NO\n");
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
30
C++专题课程/动态规划/动态规划-7-和为SUM的方法数.cpp
Normal file
30
C++专题课程/动态规划/动态规划-7-和为SUM的方法数.cpp
Normal file
@@ -0,0 +1,30 @@
|
||||
#include<bits/stdc++.h>
|
||||
|
||||
using namespace std;
|
||||
|
||||
/*
|
||||
֪ʶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD><EFBFBD><EFBFBD>Ϊsum<EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
<EFBFBD>ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݲο<EFBFBD><EFBFBD><EFBFBD>
|
||||
https://www.cnblogs.com/aiguona/p/9218754.html
|
||||
*/
|
||||
|
||||
int main() {
|
||||
int n, sum;
|
||||
cin >> n >> sum;
|
||||
|
||||
vector<long long> a(sum + 1);
|
||||
vector<int> b(n);
|
||||
|
||||
for (int i = 0; i < n; i++)
|
||||
cin >> b[i];
|
||||
|
||||
a[0] = 1;
|
||||
|
||||
for (int i = 0; i < n; i++)
|
||||
for (int j = sum; j >= b[i]; j--)
|
||||
a[j] += a[j - b[i]];
|
||||
|
||||
cout << a[sum] << endl;
|
||||
return 0;
|
||||
}
|
||||
1
C++专题课程/动态规划/动态规划学习资料.txt
Normal file
1
C++专题课程/动态规划/动态规划学习资料.txt
Normal file
@@ -0,0 +1 @@
|
||||
https://www.cnblogs.com/cao-lei/p/6891830.html
|
||||
6
C++专题课程/动态规划/教你彻底学会动态规划/佳文赏析.txt
Normal file
6
C++专题课程/动态规划/教你彻底学会动态规划/佳文赏析.txt
Normal file
@@ -0,0 +1,6 @@
|
||||
<EFBFBD><EFBFBD><EFBFBD>㳹<EFBFBD><EFBFBD>ѧ<EFBFBD>ᶯ̬<EFBFBD>滮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƪ
|
||||
https://blog.csdn.net/baidu_28312631/article/details/47418773
|
||||
|
||||
|
||||
<EFBFBD><EFBFBD><EFBFBD>㳹<EFBFBD><EFBFBD>ѧ<EFBFBD>ᶯ̬<EFBFBD>滮<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƪ
|
||||
https://blog.csdn.net/baidu_28312631/article/details/47426445
|
||||
72
C++专题课程/动态规划/数塔问题/数塔问题.cpp
Normal file
72
C++专题课程/动态规划/数塔问题/数塔问题.cpp
Normal file
@@ -0,0 +1,72 @@
|
||||
#include<bits/stdc++.h>
|
||||
|
||||
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// https://blog.csdn.net/theonegis/article/details/45801201
|
||||
using namespace std;
|
||||
|
||||
/************************************************************************/
|
||||
/* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> */
|
||||
/************************************************************************/
|
||||
const int N = 50;//Ϊ<><CEAA><EFBFBD>㷨д<E3B7A8><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F2B5A5A3><EFBFBD><EFBFBD>ﶨ<EFBFBD><EFB6A8>һ<EFBFBD><D2BB><EFBFBD>㹻<EFBFBD><E3B9BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>洢<EFBFBD><E6B4A2><EFBFBD><EFBFBD>(Ϊ<>˱<EFBFBD><CBB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD>̬<EFBFBD><CCAC><EFBFBD><EFBFBD><EFBFBD>ռ䣬<D5BC><E4A3AC><EFBFBD><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB>㷨<EFBFBD><E3B7A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƚ<EFBFBD><C8BD>鷳<EFBFBD><E9B7B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB>Ϊ<EFBFBD><CEAA><EFBFBD>㷨<EFBFBD><E3B7A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
int data[N][N];//<2F>洢<EFBFBD><E6B4A2><EFBFBD><EFBFBD>ԭʼ<D4AD><CABC><EFBFBD><EFBFBD>
|
||||
int dp[N][N];//<2F>洢<EFBFBD><E6B4A2>̬<EFBFBD>滮<EFBFBD><E6BBAE><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD>
|
||||
int n;//<2F><><EFBFBD>IJ<EFBFBD><C4B2><EFBFBD>
|
||||
|
||||
/*<2A><>̬<EFBFBD>滮ʵ<E6BBAE><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
|
||||
void tower_walk()
|
||||
{
|
||||
// dp<64><70>ʼ<EFBFBD><CABC>
|
||||
for (int i = 0; i < n; ++i)
|
||||
{
|
||||
dp[n - 1][i] = data[n - 1][i];
|
||||
}
|
||||
int temp_max;
|
||||
for (int i = n - 1; i >= 0; --i)
|
||||
{
|
||||
for (int j = 0; j <= i; ++j)
|
||||
{
|
||||
// ʹ<>õ<EFBFBD><C3B5>ƹ<EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>dp<64><70>ֵ
|
||||
temp_max = max(dp[i + 1][j], dp[i + 1][j + 1]);
|
||||
dp[i][j] = temp_max + data[i][j];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*<2A><>ӡ<EFBFBD><D3A1><EFBFBD>ս<EFBFBD><D5BD><EFBFBD>*/
|
||||
void print_result()
|
||||
{
|
||||
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><EFBFBD><EFBFBD>ͣ<EFBFBD>" << dp[0][0] << '\n';
|
||||
int node_value;
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ԫ<EFBFBD><D4AA>
|
||||
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << data[0][0];
|
||||
int j = 0;
|
||||
for (int i = 1; i < n; ++i)
|
||||
{
|
||||
node_value = dp[i - 1][j] - data[i - 1][j];
|
||||
/* <20><><EFBFBD><EFBFBD>node_value == dp[i][j]<5D><>˵<EFBFBD><CBB5>
|
||||
<09><>һ<EFBFBD><D2BB>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>data[i][j]<5D><>
|
||||
<09><><EFBFBD><EFBFBD>node_value == dp[i][j + 1]<5D><>˵<EFBFBD><CBB5>
|
||||
<09><>һ<EFBFBD><D2BB>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>data[i][j + 1]
|
||||
*/
|
||||
if (node_value == dp[i][j + 1]) ++j;
|
||||
cout << "->" << data[i][j];
|
||||
}
|
||||
cout << endl;
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>IJ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
|
||||
cin >> n;
|
||||
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ľڵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>i<EFBFBD><69><EFBFBD><EFBFBD>i<EFBFBD><69><EFBFBD>ڵ<EFBFBD>)<29><>\n";
|
||||
for (int i = 0; i < n; ++i)
|
||||
{
|
||||
for (int j = 0; j <= i; ++j)
|
||||
{
|
||||
cin >> data[i][j];
|
||||
}
|
||||
}
|
||||
tower_walk();
|
||||
print_result();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user