最后的才是最好的
2024年11月7日大约 1 分钟
最后的才是最好的
简要题面
题面
小连和小张都是芳芳的好队友,这一天芳芳旅游回来给他们俩带了n个特产让他们自己分。为了有趣,小连和小张规定了一种分配方式:轮流拿取特产,每人每次最多拿m个特产,不可以不拿。他们都认为最后的特产才是最好的,所以他们都会想方设法拿到最后一个特产,公平起见,由芳芳给出x的数值,小连和小张猜拳决定拿取顺序,获胜的人先拿。
芳芳想知道谁拿到了最后一个特产,但是她不想等待漫长的分配过程,所以聪明的你可以告诉她吗?
输入描述
一行输入三个整数n,m,w(1<=n<=10^18,1<=m<=n,0<=w<=1),n表示特产数量,m表示每人每次最多可以拿取的数量,w表示猜拳的结果,1表示小连获胜,0表示小张获胜。
输出描述
小张拿到最后一个特产则输出一行 Zhang get it!
小连拿到最后一个特产则输出一行 Lian get it!
无法确定则输出一行 I don't know!
输入输出样例
输入 #1
10 3 1
输出 #1
Lian get it!
说明/提示
解法
参考程序
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(){
ll n,m;
bool w;
cin>>n>>m>>w;
if(n%(m+1)==1){
if(w==1) cout<<"Zhang get it!\n";
else cout<<"Lian get it!\n";
}
else{
if(w==1) cout<<"Lian get it!\n";
else cout<<"Zhang get it!\n";
}
return 0;
}