首页 > 其他分享 >B. Missing Subsequence Sum

B. Missing Subsequence Sum

时间:2024-07-10 22:52:37浏览次数:18  
标签:cnt Missing int Sum long Subsequence 一众

原题链接

题解

1.如果没有不能表示出 \(k\) 的限制,那么数组由一众二次方构成
2.对于小于 \(k\) 的数,考虑 \(k\) 的最高位 \(i\) 由于 \([0,i-1]\) 最多为 \(2^i-1\) 所以可以考虑添加一个 \(k-2^i\) 来表示完 \([1,k-1]\) 内所有的数(尽管有重复)同时删掉 \(2^i\)
3.对于大于 \(k\) 的数,表现为在 \(k+1\) 上做一众二次方之和,由于缺少 \(2^i\) 所以添加 \(k+1+2^i\)

code

#include<bits/stdc++.h>
#define ll long long
using namespace std;
void solve()
{
    int n,k;
    cin>>n>>k;
    int tem=k;
    int cnt=0;

    while(k!=1)
    {
        k>>=1;
        cnt++;
    }

    cout<<22<<'\n';
    for(int i=0;i<cnt;i++) cout<<(1<<i)<<" ";
    for(int i=cnt+1;i<21;i++) cout<<(1<<i)<<" ";

    cout<<tem-(1<<cnt)<<" "<<tem+1<<" "<<tem+1+(1<<cnt)<<'\n';
}
int main()
{
    ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
    int t=1;
    cin>>t;
    while(t--) solve();
    return 0;
}


标签:cnt,Missing,int,Sum,long,Subsequence,一众
From: https://www.cnblogs.com/pure4knowledge/p/18295167

相关文章

  • P2398 GCD SUM
    原题链接题解\(ans=\sum_{i=1}^{n}i*sum[i]\)其中\(sum[i]\)为最大公约数为\(i\)的对数令\(f[i]\)为最大公约数为\(i\)的倍数的对数则有\(sum[i]=f[i]-sum[2i]-sum[3i]-...-sum[ki]\)而\(f[i]={\lfloor\frac{n}{i}\rfloor}^2\)(如果没懂请仔细阅读题目所给符号......
  • [二、状态管理]2管理组件拥有的状态(4)@Provide装饰器和@Consume装饰器:与后代组件双向同
    @Provide和@Consume,应用于与后代组件的双向数据同步,应用于状态数据在多个层级之间传递的场景。不同于上文提到的父子组件之间通过命名参数机制传递,@Provide和@Consume摆脱参数传递机制的束缚,实现跨层级传递。其中@Provide装饰的变量是在祖先节点中,可以理解为被“提供”给后代的状......
  • SMU Summer 2024 Contest Round 3(7.10)
    寻找素数对思路:数的范围为10000,直接筛出所有范围内的质数,n2的枚举所有质数对和的情况#include<bits/stdc++.h>usingnamespacestd;#defineintlonglong#definePIIpair<int,int>constintN=1e4+5;vector<int>pri;intidx,st[N];voidinit(){for(in......
  • SMU Summer 2024 Contest Round 3
    SMUSummer2024ContestRound3寻找素数对题意给你一个偶数,找到两个最接近的素数,其和等于该偶数。思路处理出1e5以内的素数,然后遍历,更新最接近的答案。代码#include<bits/stdc++.h>usingnamespacestd;usingi64=longlong;vector<int>euler_range(intn){......
  • Excel第29享:基于sum嵌套sumifs的多条件求和
    1、需求描述如下图所示,现要统计12.17-12.23这一周各个人员的“上班工时(a1)”。下图为系统直接导出的工时数据明细样例。2、解决思路首先,确定逻辑:“对多个条件(日期、人员)进行“工时”列求和”。故选择sumifs函数,由于是“日期”字段有多个数值,故与sum函数嵌套使用;其次,sumif......
  • SMU Summer 2024 Contest Round 2
    Sierpinskicarpet1.这道题的核心其实在于,我们要观察到点的位置是在每一个小图形的正方形内,和一个大图型的中心正方形处的,那么通过观察可以发现,如果满足在这个正方形处,那么一定(3k-1+1)<=x,y<=(2*3k-1)2.这个k是什么意思呢?当我们n=3的时候k可以取1,2,3,也就是对应每一级的中间宫......
  • SMU Summer 2024 Contest Round 1
    SequenceDecomposing1.题意其实就是要我们找共有多少个最长的上升的子序列,也就是理解成可以找到几个尽量长的队伍(最少LIS不相交覆盖)2.我们开一个multiset,然后先放进去第一个数,由于multiset会对元素自动从小到大排序,那么我们放进的队尾,也是排序好的,然后从第二个数开始遍历,检查一......
  • CSE 105 Summer Session
    CSE 105Summer Session 1 2024Homework 1Due date: Sunday July 7 at 11:59pmInstructionsOne member of the group should upload your group submission to Gradescope. During thesubmissionprocess,theywillbepromptedtoaddthenameso......
  • SMU Summer 2024 Contest Round 1(7.8)
    A_DiceandCoin题目链接:abc126_c思路:分别求所有掷到的筛子数时赢得可能,进行求和voidsolve(){intn,k;cin>>n>>k;doubleans=0;for(inti=1;i<=n;++i){doublenow=1.0/n;if(i>=k)ans+=now;else{......
  • SMU Summer 2024 Contest Round 1
    SMUSummer2024ContestRound1DiceandCoin题意给个n面骰子和一枚硬币,初始投骰子,若骰子的值在1到\(K-1\)之间则反复投硬币,硬币为正则该值翻倍,否则为0,当值为0输掉游戏或者大于等于\(K\)时赢得游戏结束,问你可以赢得游戏的概率为多少。思路以1到n为初始值......