题意转化:

一条长为n的路,路上有一点m,问你在什么地方再设一点a可以使路上任意一点到点a的概率大于到点m的概率


所谓概率更大,也就是说从离点m更远的一端到点a的长度小于到点m的长度

(因为此长度内所有的点到a的距离都小于到m的距离)


具体做法如下

  1. 因为这道题的点都是整数,所以先特判一下,当n=1时输出1(路的长度就为1,m<=n,所以m也只能为1,因此必不可能出现一点a使得这个端点到a的距离小于m,只能等于,此时概率为0,就愉快的输出1就好了)

  2. 对于长度不是1的道路,我们做如下处理:

因为上面说了是要使从离m更远的一端到m的距离大于到a的距离

我们把道路的中点mid看做一个分界点,当m处于[0,mid]中时,a要属于(m,n]才能使端点到a的距离更小,且当a与m的差值为1时(即a=m+1),才能使所谓的概率更大

同理,当m处于[mid,n]时,a要属于[0,mid)且a=m-1才能使概率更大


因为长度什么的都是整数,对于除法运算有限制,所以分奇数和偶数两种情况写(注意不要忘记考虑m正好位于中点的情况)

代码

#include<iostream>
#include<cstdlib>
#include<cstring>
#include<cstdio>
#include<algorithm>
#define maxn 100010 using namespace std;
int n,m;
int main(){
cin>>n>>m;
if(n==1){cout<<1;return 0;}
if(n%2==0&&m>n/2) cout<<m-1;
if(n%2==0&&m<=n/2) cout<<m+1;
if(n%2!=0&&m>=n/2+1) cout<<m-1;
if(n%2!=0&&m<n/2+1) cout<<m+1;
return 0;
}

码风丑勿喷

CF570B的更多相关文章

随机推荐

  1. Error:java: JDK isn't specified for module 'xxx'异常的解决方法

    问题描述 博主启动的项目的时候出现了一个这样的异常 解决方法 打开左上角这个Project Structure

  2. ConcurrentHashMap 并发之美

    一.前言 她如暴风雨中的一叶扁舟,在高并发的大风大浪下疾驰而过,眼看就要被湮灭,却又在绝境中绝处逢生 编写一套即稳定.高效.且支持并发的代码,不说难如登天,却也绝非易事. 一直有小伙伴向我咨询关于Co ...

  3. python之shelve、xml、configparser模块

    一.shelve模块 shelve模块比pickle模块简单,只有一个open函数,返回类似字典的对象,可读可写;key必须为字符串,而值可以是python所支持的数据类型 import shelve ...

  4. Linux 下挂载新硬盘方法(转)

    1.关闭服务器加上新硬盘   2.启动服务器,以root用户登录   3.查看硬盘信息 #fdisk -l Disk /dev/sda: 42.9 GB, 42949672960 bytes 255  ...

  5. WebApi 中请求的 JSON 数据字段作为 POST 参数传入

    使用 POST 方式请求 JSON 数据到服务器 WebAPI 接口时需要将 JSON 格式封装成数据模型接收参数.即使参数较少,每个接口仍然需要单独创建模型接收.下面方法实现了将 JSON 参数中的 ...

  6. Sentry(v20.12.1) K8S 云原生架构探索,SENTRY FOR JAVASCRIPT Source Maps 详解

    系列 Sentry-Go SDK 中文实践指南 一起来刷 Sentry For Go 官方文档之 Enriching Events Snuba:Sentry 新的搜索基础设施(基于 ClickHous ...

  7. mmall商城用户模块开发总结

    1.需要实现的功能介绍 注册 登录 用户名校验 忘记密码 提交问题答案 重置密码 获取用户信息 更新用户信息 退出登录 目标: 避免横向越权,纵向越权的安全漏洞 MD5明文加密级增加的salt值 Gu ...

  8. 基于 OpenMP 的奇偶排序算法的实现

    代码: #include <omp.h> #include <iostream> #include <cstdlib> #include <ctime> ...

  9. 【Linux】linux的所有文件分类解析

    今天看书的时候,无意间看到/dev/文件夹,以前没注意,今天去看了下发现,很多文件的开头文件属性都是一些不怎么见到的 常见的是   -     这个是代表文件,可以vim编辑的 d     这个是代表 ...

  10. 【ASM】查看ASM磁盘组剩余容量和总容量

    col total_size for a10; col free_size for a20; select name,total_mb/1024 || 'G' as total_size , free ...