codeforces A -Cut Ribbon

这篇具有很好参考价值的文章主要介绍了codeforces A -Cut Ribbon。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

思路

  • 基础 d p dp dp d p i , j dp_{i,j} dpi,j 表示长度为 i i i p i e c e piece piece j j j 的数量。题目范围 4000 4000 4000 常规定义可能会 M E L MEL MEL ,所以第二维为不同的 p i e c e piece piece 的个数。
  • 枚举不同的 p i e c e s pieces pieces 长度。
  • 方程: d p i , j = d p i − l e n j , j + 1 / 0 dp_{i,j}=dp_{i-len_j,j}+1/0 dpi,j=dpilenj,j+1/0 。(是当前枚举长度则为 1 1 1 )

Think Twice, Code Once文章来源地址https://www.toymoban.com/news/detail-799891.html

signed main() {

    int T = 1;
//    T = read();
    while (T--) {
        int n = read();
        vector<int> vec;
        for (int i = 1; i < 4; ++i) {
            int u = read();
            vec.push_back(u);
        }
        sort(vec.begin(), vec.end());
        vec.erase(unique(vec.begin(), vec.end()), vec.end());
        vector<vector<int>> dp(4000 + 10, vector<int>(vec.size()));
        auto get_sum = [&] (int j) {
            int res = 0;
            for (int i = 0; i < vec.size(); ++i) res += dp[j][i];
            return res;
        };
        for (int i = 0; i < vec.size(); ++i) dp[vec[i]][i] = 1;
        for (int i = 1; i <= n; ++i) {
            int sum = 0;
            for (int j = 0; j < vec.size(); ++j) {
                if (i - vec[j] >= 0) {
                    int tmp = get_sum(i - vec[j]);
                    if (sum < tmp) {
                        sum = tmp;
                        for (int k = 0; k < vec.size(); ++k) dp[i][k] = dp[i - vec[j]][k] + (k == j);
                    }
                }
            }
        }
        write(get_sum(n));
    }
    return 0;
}
//3119 3515 1021 7

到了这里,关于codeforces A -Cut Ribbon的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Codeforces Round 889 (Div. 2) 题解

    晚上睡不着就来总结一下叭~(OoO) 终榜!!! 先不放图了。。怕被dalaoHack...呜呜呜~         7.29半夜比赛,本来是不想打的,感觉最近做的题太多了,什么牛客杭电以及CF上的题等等等,挺杂的,也来不及整理,本想梳理一下,而且也感觉今天状态不太好,但见他们都要

    2024年02月15日
    浏览(48)
  • Codeforces Round 875 (Div. 1) 题解

    You are given two arrays a and b both of length n. Your task is to count the number of pairs of integers ( i , j ) (i,j) ( i , j ) such that 1 ≤ i j ≤ n 1≤ij≤n 1 ≤ i j ≤ n and a i ⋅ a j = b i + b j a_i⋅a_j=b_i+b_j a i ​ ⋅ a j ​ = b i ​ + b j ​ 。 1 ≤ a i , b i ≤ n 1≤a_i,b_i≤n 1 ≤ a i ​ , b i ​ ≤ n 考虑 m i n ( a i

    2024年02月08日
    浏览(44)
  • Codeforces Round 877 (Div. 2) 题解

    写了两题了,先总结一下吧。。。看了三题,都是思维题构造题,搞心态真的搞心态。。。感觉自己屁都不会,完全没有动力。。。有的有思路但是写不出来,但是思路不够成熟,练的题太少,其实这场到B题就卡住了,C题也是,题意都能读懂,但是思考的方向不对,很焦虑

    2024年02月10日
    浏览(41)
  • Codeforces Round 858 (Div. 2)题解

    目录 A. Walking Master(贪心) 题面翻译 思路: 代码实现  B. Mex Master(贪心) 题面翻译: 思路: 代码实现 C. Sequence Master(数学) 题面翻译: 思路: 代码实现 YunQian is standing on an infinite plane with the Cartesian coordinate system on it. In one move, she can move to the diagonally adjacent point on the

    2023年04月08日
    浏览(80)
  • Codeforces Round 830 (Div. 2)题解

    1A 这个设计到一个常识,如果知道能在三分钟之内解题: 相邻的两个数字的gcd肯定是1::这个没有问题,比如gcd(1,2),比如gcd(3,4) 但是我想要任何两个数字的的最大公约数为1,我们直接让这两个数字等于除以相邻的两个数字的结果就行, 结果必然是两个树的因子,两个相邻的

    2024年02月15日
    浏览(41)
  • Educational Codeforces Round 153 D-E dp,bfs

    1860D Balanced String 首先只能是0和1交换,1在 i i i 位置,0在 j j j 位置,每交换一次产生的贡献是 2 ∗ ( i − j ) 2*(i-j) 2 ∗ ( i − j ) ,所以我们可以先算出原01串中所需要的贡献 m m m ,我们发现找到 t o l tol t o l 个1和0的位置 i k , j k i_k,j_k i k ​ , j k ​ 且 ∑ k t o l i k − j k = m

    2024年02月12日
    浏览(44)
  • Educational Codeforces Round 145 Div. 2 题解

    目录 A. Garland(签到) 题面翻译 思路: 代码 B. Points on Plane(数学) 题面翻译 思路: 代码 C. Sum on Subarray(构造) 题面翻译: 思路: 代码 D. Binary String Sorting 题面翻译 思路: 代码 You have a garland consisting of 4 colored light bulbs, the color of the i-th light bulb is si. Initially, all the l

    2023年04月09日
    浏览(38)
  • Codeforces Div.2 1798B Three Sevens题解

    题目: 传送门 B. Three Sevens time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Lottery \\\"Three Sevens\\\" was held for m days. On day i, ni people with the numbers ai,1,…,ai,ni,participated in the lottery. It is known that in each of the m days, only one winner was selected from the lot

    2024年02月07日
    浏览(37)
  • Educational Codeforces Round 147 div2题解

    目录 A. Matching(签到) 思路: 代码:  B. Sort the Subarray(签到) 思路: 代码: C. Tear It Apart(枚举) 思路: 代码: D. Black Cells(模拟) 思路:  代码一: 代码二:(模仿自\\\"AG\\\"佬) An integer template is a string consisting of digits and/or question marks. A positive (strictly greater than 0) in

    2023年04月21日
    浏览(40)
  • Educational Codeforces Round 134 (Div.2) D 题解

    D. Maximum AND 给定两组序列 (a) (b) ,长度为 (n) ,现有一新序列 (c) ,长度也为 (n) 。 其中, (c_i = a_i oplus b_i) 。 定义 (f(a,b) = c_1c_2……c_n) 。 现在你可以随意编排 (b) 序列的顺序,求 (f(a,b)) 的最大值。 以下位运算均是二进制。 由于按位与的运算结果是越来越小的

    2024年02月06日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包