news 2026/5/1 6:48:11

[pta]L1-108 零头就抹了吧(c++)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
[pta]L1-108 零头就抹了吧(c++)

题目:

L1-108 零头就抹了吧

分数 10

作者 陈越

单位 浙江大学

这是知乎上看到的:前几天去肉店灌香肠,结账一共258元。我说:“都是老顾客了,零头就抹了吧。”老板也很爽快:“行,凑个整,你给256块吧。”我顿时肃然起敬:“您以前当过程序员吧?在哪个公司啊?”老板看了看我,有点不好意思地说:“XX”。

本题就请你写个程序,帮老板计算他怎么抹零头。

输入格式:

输入在一行中给出一个正整数 N(≤109),为客人应该付的钱。

输出格式:

在一行中输出老板抹掉零头后应收的钱。

输入样例:

258

输出样例:

256

样例说明:

256 在二进制中是 100 000 000,被程序员认为是个很“整”的数。所有二进制中最高位是 1 后面全是 0 的数字都是程序员世界里的“整”数。256 是小于 258 的最大的“整”数,所以老板收取这个数。

我的想法:

样例说明给了很重要的信息,“所有二进制中最高位是 1 后面全是 0 的数字都是程序员世界里的“整”数”,也就是说,二进制表示1,10,100,1000,,,是“整数”,其实换成十进制,就是2的倍数。

我先把2^0到2^31次方的取整结果先算出来,然后计算当前的取整结果对应输出哪个就好了。计算对应取余结果时,就一直把原数除以2,看一共能除多少次,其实就是类比十进制转二进制的方法。其实在这一题中,也可以不必把2^0到2^31全计算出来,我只是觉得要是有多个输出的话,这样的方法可以节省时间

实现代码:

#include <iostream> using namespace std; int a[40]; void func(){ a[0]=1; for(int i=1;i<=31;i++){ a[i]=2*a[i-1]; } } int getr(int x){ int ans=0; while(x){ x/=2; ans++; } return a[ans-1]; } int main() { func(); int n=0;cin>>n; int ret=getr(n); cout<<ret<<endl; return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/29 9:29:12

强大 React 时间轴编辑器:3 个高效动画编辑核心优势

强大 React 时间轴编辑器&#xff1a;3 个高效动画编辑核心优势 【免费下载链接】react-timeline-editor react-timeline-editor is a react component used to quickly build a timeline animation editor. 项目地址: https://gitcode.com/gh_mirrors/re/react-timeline-edi…

作者头像 李华
网站建设 2026/4/23 0:19:53

实时数据分析新范式:如何突破传统数据库交互瓶颈

实时数据分析新范式&#xff1a;如何突破传统数据库交互瓶颈 【免费下载链接】mcp-clickhouse 项目地址: https://gitcode.com/gh_mirrors/mc/mcp-clickhouse 「核心痛点」&#xff1a;你是否正在遭遇这些数据交互难题&#xff1f; 当你需要从海量数据中提取关键业务指…

作者头像 李华
网站建设 2026/5/1 1:46:55

探索开源机械臂:从技术原理到实践创新的完整指南

探索开源机械臂&#xff1a;从技术原理到实践创新的完整指南 【免费下载链接】OpenArm OpenArm v0.1 项目地址: https://gitcode.com/GitHub_Trending/op/OpenArm 开源机械臂作为现代机器人研究与教育的核心工具&#xff0c;正在推动协作机器人技术的民主化发展。本文将…

作者头像 李华
网站建设 2026/4/23 3:58:32

数据据统计基础之Pandas.DataFrame学习

Pandas 是 Python 中用于数据分析的核心库之一&#xff0c;其中 DataFrame 是最常用的数据结构&#xff0c;类似于 Excel 表格或 SQL 表。下面我们将从 创建、属性、索引、筛选、统计、排序 等多个维度全面介绍 DataFrame 的基本用法。 # dataframe的创建方式 import pandas a…

作者头像 李华
网站建设 2026/4/18 3:40:55

语音识别与说话人分离:如何破解多人语音处理难题

语音识别与说话人分离&#xff1a;如何破解多人语音处理难题 【免费下载链接】FunASR A Fundamental End-to-End Speech Recognition Toolkit and Open Source SOTA Pretrained Models, Supporting Speech Recognition, Voice Activity Detection, Text Post-processing etc. …

作者头像 李华
网站建设 2026/4/7 19:19:32

零基础学Betaflight:飞控设置手把手教程

以下是对您提供的博文《零基础学Betaflight:飞控设置手把手技术解析》的 深度润色与专业重构版本 。本次优化严格遵循您的全部要求: ✅ 彻底去除AI腔调与模板化结构(无“引言/概述/总结”等机械分节) ✅ 所有内容有机融合,以工程师真实调试视角自然推进 ✅ 技术细节不…

作者头像 李华