水题Eating Soup

       A. Eating Soup
time limit per test1 second
memory limit per test256 megabytes
inputstandard input
outputstandard output
    The three friends, Kuro, Shiro, and Katie, met up again! It’s time for a party…
    What the cats do when they unite? Right, they have a party. Since they wanted to have as much fun as possible, they invited all their friends. Now n cats are at the party, sitting in a circle and eating soup. The rules are simple: anyone having finished their soup leaves the circle.
    Katie suddenly notices that whenever a cat leaves, the place where she was sitting becomes an empty space, which means the circle is divided into smaller continuous groups of cats sitting next to each other. At the moment Katie observes, there are m cats who left the circle. This raises a question for Katie: what is the maximum possible number of groups the circle is divided into at the moment?Could you help her with this curiosity?You can see the examples and their descriptions with pictures in the “Note” section.
    Input
    The only line contains two integers n and m (2≤n≤1000, 0≤m≤n) — the initial number of cats at the party and the number of cats who left the circle at the moment Katie observes, respectively.
    Output
Print a single integer — the maximum number of groups of cats at the moment Katie observes.
    Examples
    inputCopy
    7 4
    outputCopy
    3
    inputCopy
    6 2
    outputCopy
    2
    inputCopy
    3 0
    outputCopy
    1
    inputCopy
    2 2
    outputCopy
    0
    题意:题目的意思就是说,有n只猫,围在一起喝汤,喝完了就可以走m只,最后可以围成的多少组
    思路:当一只猫都没走的时候,还是一圈只有一个组;
            当剩下的猫大于走的猫的时候,这时候能围成m组;
            当剩下的猫小于走的猫的时候,这时候能围成n-m组;
            水题一道,哎,特此记录一下

#include"iostream"
#include"algorithm"
#include"cstdio"
#include"cstring"
#include"string.h"
using namespace std;
int main(){
	int n,m;
	while(cin>>n>>m){
		 if(m==0)
			cout<<"1"<<endl;
		else if(n-m>=m)
			cout<<m<<endl;
		else
			cout<<n-m<<endl;
		}
	return 0;
} 
//不要脸的贴个网上代码
#include<bits/stdc++.h>
using namespace std;
int n,m;
int main()
{
	cin>>n>>m;
	cout<<min(n-m,max(1,m));
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值