首页 > 其他分享 >CodeStar2023年春第9周周赛普及进阶组

CodeStar2023年春第9周周赛普及进阶组

时间:2023-05-29 22:12:15浏览次数:54  
标签:CodeStar2023 进阶 周周赛 rep int 年春 dp

T1:奇怪的银行

可以直接把 \(1, 6^p, 9^p\) 当做物品大小,跑一遍完全背包。时间复杂度为 \(\mathcal{O}(n\log n)\)

dp[i][j] 表示前 \(i\) 种面值恰好凑出 \(j\) 元的最少张数

转移:

\[dp[i][j] = \min(dp[i-1][j], dp[i][j-w_i]+1) \]

代码实现
#include <bits/stdc++.h>
#define rep(i, n) for (int i = 0; i < (n); ++i)

using namespace std;

inline void chmin(int& x, int y) { if (x > y) x = y; }

int main() {
    int m;
    cin >> m;
    
    vector<int> w(1, 1);
    for (int i = 6; i <= m; i *= 6) w.push_back(i);
    for (int i = 9; i <= m; i *= 9) w.push_back(i);
    int n = w.size();
    
    const int INF = 1001001001;
    vector<int> dp(m+1, INF);
    dp[0] = 0;
    rep(i, n) {
        for (int j = w[i]; j <= m; ++j) {
            chmin(dp[j], dp[j-w[i]]+1);
        }
    }
    
    cout << dp[m] << '\n';
    
    return 0;
}

标签:CodeStar2023,进阶,周周赛,rep,int,年春,dp
From: https://www.cnblogs.com/Melville/p/17441813.html

相关文章

  • 23年春面向对象第三单元分析和总结
    23年春面向对象第三单元分析和总结目录概述JML JML基本 JML表达式 局部容器 操作符架构 连通块数目查询 三元环数目查询 最小环查询测试 测试的分类 测试工具 构造测试用例 OKtestbug分析总结概述  OO第三单元主要围绕着JML(JavaModelingLan......
  • CodeStar2023年春第6周周赛普及进阶组
    T1:最长倍数序列本题难度中等,先把\(a\)从小到大排序。dp[i]表示以\(a_i\)结尾的倍数序列。转移如下:只有\(a_i\),对应长度\(dp[i]=1\)上一个数是\(a_j(1\leqslantj\leqslanti-1)\),若\(a_j\)是\(a_i\)的约数,就更新\(dp[i]=\max(dp[i],dp[j]+1)\)最终答......
  • CodeStar2023年春第5周周赛普及进阶组
    T1:分段求平均数本题难度中等,划分型DP问题。用dp[i]表示前\(i\)个数最少划分成几段,对\(j=1,2,\cdots,i-1\)判断从\(a_j\)到\(a_i\)划分成一段时,平均数是否为整数,如果是整数,就更新\(dp[i]=\max(dp[i],dp[j-1]+1)\)初始值:\(dp[i]=i\)代码实现#include<b......
  • 2023年春面向对象第二单元
    23年春面向对象第二单元分析与总结目录概述JVM基础  JVM简介  JVM内存结构  java类的加载机制  JVM结构与多线程的关联架构  电梯  调度器  类图分析  对任务要求的回答bug分析总结概述  OO第二单元主要围绕着java多线程编程展开。在理论部分,课......
  • CodeStar2023年春第4周周赛普及奠基组
    T1:字符串加密(二)本题难度简单,是一个模拟题,注意\(k\)可能非常大,需要先模\(26\)。代码实现#include<bits/stdc++.h>usingnamespacestd;usingll=longlong;intmain(){stringm;cin>>m;llk;cin>>k;k%=26;stringans;......
  • CodeStar2023年春第3周周赛普及奠基组
    T1:字符串加密本题难度简单,根据题目描述模拟即可。代码实现#include<bits/stdc++.h>usingnamespacestd;intmain(){strings;cin>>s;for(char&c:s){if(islower(c))c-=32;elsec+=32;}reverse(s.beg......
  • CodeStar2023年春第2周周赛普及进阶组
    T1:递推134数本题难度中等,递推计数问题,需要使用高精度......
  • 2023年春面向对象第一单元
    23年春面向对象第一单元分析与总结目录 前言 架构  解析方法  数据结构  类图分析 基于度量的程序结构分析 BUG分析 互测相关 总结前言OO第一单元......
  • 2023年春季学期开课博客
    本周的周一我们进行了本学期的第二次课,介绍了本学期我们主要学习的内容,在我看来本学期最主要的任务有两个,第一个是中国大学生服务外包杯比赛,作为团队的一员应该完成好队长......
  • 使用 JavaScript 创建一个兔年春节倒数计时器
    我们可以通过多种方式构建JavaScript倒数计时,我在本教程中展示的这个​​兔年春节倒数计时器​​是由HTMLCSS和JavaScript创建的。它的工作方式非常简单,需要两种类......