学习总结2.14

深搜将题目分配,如果是两个题目,就可以出现左左,左右,右左,右右四种时间分配,再在其中找最小值,即是两脑共同处理的最小值

cs 复制代码
#include <stdio.h>
int s[4];
int sum=0;
int brain[25][25];
int min=999;
int left=0,right=0;
void dfs(int x,int y){
    if(y>s[x]){//如果当前这套题目已经被复习完
        if(max(left,right)<min) min=max(left,right);//更新最小值
        return;
    }else{
        left+=brain[x][y];//左脑处理
        dfs(x,y+1);//递归
        left-=brain[x][y];//回溯
        
        right+=brain[x][y];//右脑处理
        dfs(x,y+1);//递归
        right-=brain[x][y];//回溯
    }
}
int max(int a,int b){
    return (a>b)?a:b;
}
int main()
{
    for(int i=1;i<=4;i++){
        scanf("%d",&s[i]);
    }
    for(int i=1;i<=4;i++){
        left=0,right=0;
        min=999;//初始化
        for(int j=1;j<=s[i];j++){
            scanf("%d",&brain[i][j]);
        }
        dfs(i,1);
        sum+=min;
    }
    printf("%d\n",sum);
    return 0;
}

比较简单的dp01背包

cs 复制代码
#include <stdio.h>
int dp[205][205]={0};
int n,m,t;
int a[205],b[205];
int max(int a,int b){
    return (a>b)?a:b;
}
int main()
{
    scanf("%d %d %d",&n,&m,&t);
    for(int i=1;i<=n;i++){
        scanf("%d %d",&a[i],&b[i]);
    }
    for(int i=1;i<=n;i++){
        for(int j=m;j>=a[i];j--){
            for(int k=t;k>=b[i];k--){
                dp[j][k]=max(dp[j][k],dp[j-a[i]][k-b[i]]+1);
            }
        }
    }
    printf("%d\n",dp[m][t]);
    return 0;
}
相关推荐
承渊政道17 分钟前
【优选算法】(实战体会位运算的逻辑思维)
数据结构·c++·笔记·学习·算法·leetcode·visual studio
AI-Ming40 分钟前
程序员转行学习 AI 大模型: 踩坑记录:服务器内存不够,程序被killed
服务器·人工智能·python·gpt·深度学习·学习·agi
m0_7167652343 分钟前
C++提高编程--STL常用容器(set/multiset、map/multimap容器)详解
java·开发语言·c++·经验分享·学习·青少年编程·visual studio
2501_945318491 小时前
零基础学习AI的选型指南:CAIE认证与编程型AI认证如何取舍
人工智能·学习
承渊政道1 小时前
【优选算法】(实战推演模拟算法的蕴含深意)
数据结构·c++·笔记·学习·算法·leetcode·排序算法
Keep learning!1 小时前
PCA主成分分析学习
学习·算法
浮白载笔的夜晚1 小时前
【科普向】模拟电路(Analog Circuits)与射频电路(RF Circuits)的区别
学习
Yilena2 小时前
带你轻松学习LangChain4j
java·学习·langchain
是翔仔呐2 小时前
第13章 SPI通信协议全解:底层时序、4种工作模式与W25Qxx Flash芯片读写实战
c语言·开发语言·stm32·单片机·嵌入式硬件·学习·gitee
是翔仔呐3 小时前
第14章 CAN总线通信全解:底层原理、帧结构与双机CAN通信实战
c语言·开发语言·stm32·单片机·嵌入式硬件·学习·gitee