首页 > 其他分享 >374. 猜数字大小

374. 猜数字大小

时间:2023-12-19 15:11:52浏览次数:24  
标签:guess return 数字 int mid num 大小 374

374. 猜数字大小

猜数字游戏的规则如下:

每轮游戏,我都会从 1 到 n 随机选择一个数字。 请你猜选出的是哪个数字。
如果你猜错了,我会告诉你,你猜测的数字比我选出的数字是大了还是小了。
你可以通过调用一个预先定义好的接口 int guess(int num) 来获取猜测结果,返回值一共有 3 种可能的情况(-1,1 或 0):

-1:我选出的数字比你猜的数字小 pick < num
1:我选出的数字比你猜的数字大 pick > num
0:我选出的数字和你猜的数字一样。恭喜!你猜对了!pick == num
返回我选出的数字。

二分

1.向上取整

/** 
 * Forward declaration of guess API.
 * @param  num   your guess
 * @return 	     -1 if num is higher than the picked number
 *			      1 if num is lower than the picked number
 *               otherwise return 0
 * int guess(int num);
 */

class Solution {
public:
    int guessNumber(int n) {
        long long l=1,r=n;
        while(l<r){
            long long mid=(l+r)>>1;
            if(guess(mid)==0)return mid;
            else if(guess(mid)==1)l=mid+1;
            else r=mid;
        }
        return r;
    }
};

2.向下取整

/** 
 * Forward declaration of guess API.
 * @param  num   your guess
 * @return 	     -1 if num is higher than the picked number
 *			      1 if num is lower than the picked number
 *               otherwise return 0
 * int guess(int num);
 */

class Solution {
public:
    int guessNumber(int n) {
        long long l=1,r=n;
        while(l<r){
            long long mid=(l+r+1)>>1;
            if(guess(mid)==0)return mid;
            else if(guess(mid)==1)l=mid;
            else r=mid-1;
        }
        return r;
    }
};

标签:guess,return,数字,int,mid,num,大小,374
From: https://www.cnblogs.com/isomer/p/17913777.html

相关文章

  • 268. 丢失的数字
    268.丢失的数字给定一个包含[0,n]中n个数的数组nums,找出[0,n]这个范围内没有出现在数组中的那个数。哈希表classSolution{public:intmissingNumber(vector<int>&nums){intn=nums.size();unordered_set<int>se;for(autoi:nu......
  • 企业数字化转型升级框架和全景图
            ......
  • 业务协同零边界|省级数字政府正式上线!
     近日,由魅视科技深度参与建设的某省数字政府运营指挥中心正式上线运营!该省数字政府以“146N”架构,推动技术融合、业务融合、数据融合,破除跨层级跨地域、跨系统、跨部门、跨业务堵点和壁垒,打造企业和群众办事环节最简、材料最少、时限最短、费用最小、便利度最优、满意度最高的数字......
  • IT发展趋势:数字化时代的技术驱动力
    摘要:随着技术的不断进步和创新,信息技术(IT)领域在当今数字化时代变得越发重要。本文将探讨当前IT行业的发展趋势,包括人工智能(AI)、大数据、云计算、物联网(IoT)和区块链等关键技术,并讨论它们对各行各业的影响以及未来的发展前景。引言:在信息爆炸和数字化转型的背景下,IT技术正逐渐成为......
  • 【专题】中国餐饮业数字化发展报告PDF合集分享(附原数据表)
    餐饮业作为实体经济的重要组成部分,对于促进经济增长、刺激消费、增加就业和改善民生具有十分重要的作用。随着全球科技革命和产业变革的加速推进,数字化转型已成为产业发展的必然趋势,其中大数据、物联网、人工智能、云计算、虚拟现实和5G等信息技术正在与实体经济深度融合,为餐饮业......
  • C++ 获取 vector 最大的 3 个数字
    假设现在有一个数组存储了成绩信息,要获得前三名#include<iostream>#include<vector>#include<algorithm>std::vector<int>scores{10,30,90,30,100,20,10,0,30,40,40,70,70};下面这种方法可以将前3名成绩复制到结果里,同时考虑到scores长度小于3的情况。......
  • 数据可视化助力小微企业实现数字化加速
    数据可视化技术正在成为小微企业数字化转型的利器。它不仅为企业提供了更清晰、更直观的数据呈现方式,还在企业决策、运营和客户体验等方面发挥着巨大的作用。以下是数据可视化如何助力小微企业实现数字化加速的探讨:数据可视化使得企业能够更深入地理解数据。通过......
  • 关于《企业数字化平台》
    大家好,开始我们《企业数字化平台》系列栏目,首先做一个简短的自我介绍,Duster是本人现在的笔名,曾用笔名尘埃,写了本书《生活新视界》,如果有缘的话,希望您读到他,如果您能读懂,您很可以的;如果您能提出些批评,很是感激;相信《生活新视界》多少会对您有所启迪。另外一个称呼是李老师,是的,我是......
  • 换热站数字孪生 | 图扑智慧供热 3D 可视化
    前言换热站作为供热系统不可或缺的一部分,其能源消耗对城市环保至关重要。在双碳目标下,供热企业可通过搭建智慧供热系统,实现供热方式的低碳、高效、智能化,从而减少碳排放和能源浪费。通过应用物联网、大数据等高新技术,对热源、管网等供热系统进行智慧化改造,实现从热源、管网到居民......
  • 查看表空间使用率,表,用户大小
    1.查看表空间使用率setlin200pages2000colTABLESPACE_NAMEfora32colfree_perfor999.00coluse_perfor999.00colall_free_perfor999.00selecta.tablespace_name,round(a.bytes_alloc/1024/1024,2)"allocate_size",......