codeforces#256DIV2 D题Multiplication Table

codeforces#256DIV2 D题Multiplication Table

大家好,又见面了,我是全栈君。

题目地址:http://codeforces.com/contest/448/problem/D

当时是依照找规律做的,规律倒是找出来了,可是非常麻烦非常麻烦。

。

看到前几名的红名爷们3分钟就过了,于是果断放弃了。

。赛后才知道是用二分的方法做,知道了二分之后。剩下的就非常easy了。。关键在于能不能想到用二分。。

代码例如以下:

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <ctype.h>
#include<algorithm>

using namespace std;

int main()
{
    __int64 low, high, mid, x, ans, s1, s2, n, m, k, i;
    scanf("%I64d%I64d%I64d",&n,&m,&k);
    high=n*m;
    low=1;
    while(low<=high)
    {
        mid=(low+high)/2;
        s1=s2=0;
        for(i=1;i<=n;i++)
        {
            x=mid/i;
            if(x>m)
            {
                s1+=m;
            }
            else
            {
                if(mid%i==0)
                {
                    s2++;
                    s1+=x-1;
                }
                else
                {
                    s1+=x;
                }
            }
        }
        if(k>=s1+1&&k<=s1+s2)
        {
            ans=mid;
            break;
        }
        else if(k>s1+s2)
        {
            low=mid+1;
        }
        else
        {
            high=mid-1;
        }
    }
    printf("%I64d\n",ans);
    return 0;
}


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116494.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • CUDA编程之快速入门(CUDA10)

    CUDA编程cmake基本模板cmake版本与命令cmake版本之间会有命令差异,高版本中会舍弃一些低版本中的命令。而网上找到的大部分的cuda程序cmake文件都是基于低版本的,基本上都是有 add_cuda_executable这个命令的版本。而这个命令在高版本中丢弃了,所以要修改win10预览版系统中cmake出错的问题如果安装的是win10的预览版或者其他什么原因,如果出现报错:–SelectingWindowsSDKversion10.0.19041.0totarge

    2022年4月10日
  • 团队解散,我们该何去何从?

    团队解散,我们该何去何从?写在最前:纯属吐槽,随笔,勿喷!就在前些天,下班回家的路上,看到群信息,说:听说、听说京东裁员了~,图片来源于网络也是在上上月,也一度被传的沸沸扬扬的:阿里、京东、华为相继被曝停止社招,新闻也是满天飞舞,不管是裁员,还是停止社招,这些事情没有落在亲身经历,没有落在自己身上我们都会觉得不痛不痒,毕竟一个旁观者,永远无法感受当事人的喜怒哀乐~。俗话说:人无远虑必有近忧,假如当你遇上裁员,…

    2022年5月19日
  • 自动化测试+性能面试题整理–个人最新【持续更新】「建议收藏」

    自动化测试+性能面试题整理–个人最新【持续更新】「建议收藏」写在前面公司要求招一名自动化测试,能力要求不高,1年左右自动化经验+部分性能经验即可,让我出一份题,我就百度+公司项目遇到的问题,出了一份,出题整体思路是:接口自动化问题+性能问题+规划的ui、app自动化+整体质量体系建设等多方面考虑。下面是正题自动化测试面试题1:基础篇目的:验证求职者是否在自动化测试岗位有实际应用于生产的工作经验1、使用什么测试框架做的上一个项目的自动化测试?说下怎么…

    2022年9月29日
  • navicate 15 激活码【注册码】

    navicate 15 激活码【注册码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
  • verilog调用vhdl模块_verilog和vhdl哪个更好

    verilog调用vhdl模块_verilog和vhdl哪个更好初学FPGA,记录一些个人的探索历程和心得。本文的初衷是为了验证VHDL和Verilog文件互相调用功能。以一个简单的二选一选择器为例,分别用两种方法实现功能。一、用Verilog文件调用VHDL以Verilog文件为顶层文件,调用VHDL模块,testbench为Verilog文件。1、新建project2、编写.vhd文件,FPGA_VHDL.vhd,文件名与模块名称一致;3、编写FPGA_Verilog.v文件,文件名与模块名称一致,且设为top文件。4、编写testbench文件

    2022年9月21日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号