首页 > 其他分享 >CSP历年复赛题-P7071 [CSP-J2020] 优秀的拆分

CSP历年复赛题-P7071 [CSP-J2020] 优秀的拆分

时间:2024-06-13 10:32:18浏览次数:27  
标签:二进制位 res 位是 拆分 P7071 CSP J2020

原题链接:https://www.luogu.com.cn/problem/P7071

题意解读:提取n的二进制位所有的1表示的整数,如果最低位是1则输出-1。

解题思路:

如果n的二进制最低为是1(n是奇数),则肯定不是优秀拆分,输出-1

否则,从低位到高位遍历n的每一个二进制位,看第i位是1,倒序输出2^i。

100分代码:

#include <bits/stdc++.h>
using namespace std;

int main()
{
    stack<int> res;
    int n;
    cin >> n;
    if(n & 1) cout << -1; //二进制&操作,判断n最低二进制位是否为1
    else
    {
        for(int i = 0; i < 32; i++)
        {
            if(n >> i & 1) //判断n的第i个二进制位是否为1,最低位是0
            {
                res.push(pow(2, i));
            }
        }
    }
    while(res.size())
    {
        cout << res.top() << " ";
        res.pop();
    }
    return 0;
}

 

标签:二进制位,res,位是,拆分,P7071,CSP,J2020
From: https://www.cnblogs.com/jcwy/p/18245373

相关文章

  • CSP历年复赛题-P5663 [CSP-J2019] 加工零件
    原题链接:https://www.luogu.com.cn/problem/P5663题意解读:工人是图中的点,传送带是图中的无向边,给出q个询问a,l,判断是否能有一条1号点到a点的路径为l。解题思路:考试的关键是拿分!同样可以来面向数据编程:1、测试点 1∼4,1≤......
  • CSP历年复赛题-P5662 [CSP-J2019] 纪念品
    原题链接:https://www.luogu.com.cn/problem/P5662题意解读:n件物品,t天每天有不同的价格,类似股票,初始有m金币,每天都可以无限次买卖,问最后最多可以达到多少金币。解题思路:考试中一定要学会面向数据编程!1、对于 10%10% 的数据,......
  • 如何调试 "内容安全策略 (CSP) 脚本源代码";
    我试图在我的NextJS应用程序中阻止不受信任的脚本标记。我添加了"内容安全策略"安全标头,特别是"src-script"指令。但是我收到了一个错误,基本上是说有一些未知的脚本主机(除了列出的那些)违反了该指令。Chrome浏览器并没有提供帮助,因为它不知道是哪个脚本违反了这一指令。......
  • CSP历年复赛题-P5661 [CSP-J2019] 公交换乘
    原题链接:https://www.luogu.com.cn/problem/P5661题意解读:坐一次地铁得到一张优惠券,坐公交可以已使用金额大于等于票价的优惠券,优惠券45分钟之内有效,计算所有乘车记录的总花费。解题思路:采用队列记录所有坐地铁得到的优惠券;每次都将过期优惠券从队列中踢出,保证队列里的优惠券......
  • CSP历年复赛题-P5018 [NOIP2018 普及组] 对称二叉树
    原题链接:https://www.luogu.com.cn/problem/P5018题意解读:找到是对称二叉树的最大子树节点数。解题思路:1、先统计每一个节点为子树的节点数intdfs1(introot){if(root==-1)return0;returncnt[root]=dfs1(tree[root].l)+dfs1(tree[root].r)+1;}2、再......
  • CSP历年复赛题-P5017 [NOIP2018 普及组] 摆渡车
    原题链接:https://www.luogu.com.cn/problem/P5017题意解读:先将问题进行抽象、建模。设一条数轴,从左到右,每个点对应一个时刻,每个时刻可能有多个人到达,然后有若干个发车时刻,每两个发车时刻间隔必须>=m,每个人的等待时长就是到最近一个发车时刻的时间累加,计算所有人等待时间最小值。......
  • 【题解】 [CSP-J 2019] 纪念品
    题目描述题目大意在\(T\)天内,有\(n\)种纪念品和初始的\(m\)元。可以得到每天每种纪念品的价格。每一天可以以当日价格买卖纪念品。特别的,当天卖出得到的钱可以当天买入,当日买入的纪念品也可以当日卖出。当然可以一直持有。但是,\(T\)天过后,手上不可以持有纪念品。思路......
  • CSP历年复赛题-P3957 [NOIP2017 普及组] 跳房子
    原题链接:https://www.luogu.com.cn/problem/P3957题意解读:有n个格子,每个格子有不同的距离和分数,从起点,每次可跳距离为d,用g金币后可跳距离范围可以变成max(d-g,1)~d+g,求最小的g,使得可跳跃得分不少于k。解题思路:1、单调性分析:如果g越大,可跳跃的范围就越大,理论上能得的分数越......
  • 【题解】[CSP-J 2019] 公交换乘
    题目描述题目大意给出\(n\)次出行记录(地铁或公交车),有以下优惠方案:搭乘一次地铁后可以获得一张有效期为45分钟的优惠票,可以免费搭乘一次票价不超过该地铁票价的公交车。优惠票可以累计存储优先使用过期时间早的优惠票。思路枚举每一次出行:如果是地铁。累加花费,并记......
  • CSP历年复赛题-P3956 [NOIP2017 普及组] 棋盘
    原题链接:https://www.luogu.com.cn/problem/P3956题意解读:计算从(1,1)走到(m,m)的最小花费,有几个限定:同色格子可以走,花费为0;不同色格子可以走,花费为1;有色格子可以走到无色格子,花费为2,且用将无色格子临时染色;无色格子不能走到无色格子。解题思路:可以采用DFS来暴搜所有路径,需......