当前位置: 首页 > news >正文

3.17学习总结

写了两道题

刚开始用的之前做组合输出的方法,时间超限了,想不出怎么优化,后面看了题解,代码如下

#include <stdio.h>
#include <stdlib.h>
int n,min=2e9;
int a[11],b[11];
//搜索
void hly(int s,int x,int y)
{
    //当s>n时搜索完毕
    if(s>n){
        //检查是否为清水
        if(x==1&&y==0)
        return;
        //更新最小值
        if(min>abs(x-y))
            min=abs(x-y);
        return;
    }
    //添加该配料
    hly(1+s,x*a[s],y+b[s]);
    //不添加该配料
    hly(1+s,x,y);
    return;
}
int main()
{
    scanf("%d",&n);
    for(int i=1;i<=n;i++){
        scanf("%d %d",&a[i],&b[i]);
    }
    //搜索
    hly(1,1,0);
    printf("%d\n",min);
    return 0;
}

固定了正方形的右下角(i,j),此时答案为Min(i,j),枚举求和。

同理,固定矩形右下角(i,j),显然此时矩形个数为i*j。

得出答案

#include <stdio.h>
#include <stdlib.h>
int min(int a,int b)
{
    if(a<b)
        return a;
    return b;
}
int main()
{
    int n,m,i,j;
    long long x=0,y=0;
    scanf("%d %d",&n,&m);
    for(i=1;i<=n;i++){
        for(j=1;j<=m;j++){
            x+=min(i,j);
            y+=i*j;
        }
    }
    printf("%lld %lld\n",x,y-x);
    return 0;
}

相关文章:

  • 【项目合集】智能语音小车-微信小程序控制
  • WebView2 nuget不能安装到unity项目中
  • 中间件 - 1.nats
  • Matlab GPU加速技术
  • 如何检查CMS建站系统的插件是否安全?
  • 使用 DrissionPage 实现网页内容自动化采集
  • Git Bisect 使用指南:高效定位引入 Bug 的提交
  • Qt之自定义界面组件 一
  • Jenkins 快讯
  • STM32G070CBT6读写FLASH中的数据
  • 浅谈Mysql数据库事务操作 用mybatis操作mysql事务 再在Springboot中使用Spring事务控制mysql事务回滚
  • ‌RTSPtoWeb, 一个将rtsp转换成webrtc的开源项目
  • 银河麒麟V10SP3Server中离线安装Docker引擎与docker-compose
  • 电池预测 | 第23讲 基于CNN-BiLSTM的锂电池剩余寿命预测,附带PPT视频讲解
  • GB9706.1-2020附件J绝缘路径参考
  • Redis系列:深入理解缓存穿透、缓存击穿、缓存雪崩及其解决方案
  • 如何用AI轻松制作完美PPT,节省时间又提升效率
  • 数据结构——查找
  • 背包问题——多重背包(C语言)
  • [免费]直接整篇翻译pdf工具-支持多种语言
  • 虚构医药服务项目、协助冒名就医等,北京4家医疗机构被处罚
  • 越老越妖的库里,成了火箭季后赛里一晃十年的噩梦
  • 今年五一档电影票房已破7亿
  • 特朗普要征100%关税,好莱坞这批境外摄制新片有麻烦了
  • 金正恩视察重要坦克厂并强调更迭陆军装备
  • 澎湃读报丨央媒头版五四青年节集中刊文:以青春之我,赴时代之约