左右互博。

2024-02-23 15:20
文章标签 左右 互博

本文主要是介绍左右互博。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
 

讨厌鬼在和小甜妹在玩石头游戏。

游戏一开始有 nnn 堆石子,第 iii 堆石子,有 aia_iai​ 个石子。两人轮流进行游戏。

轮到某个人时,这个人先选数量为 x(x>1)x(x>1)x(x>1) 的一堆石子,然后选择一个整数 y(2≤y≤x)y(2 \leq y \leq x)y(2≤y≤x),将选择的 xxx 个石子分为两堆石子,数量分别为 ⌊xy⌋\lfloor \frac{x}{y} \rfloor⌊yx​⌋ 和 x−⌊xy⌋x-\lfloor \frac{x}{y} \rfloorx−⌊yx​⌋。

当有某个人不能操作时,则失败,另一个人胜利。

两人都绝顶聪明,必定使用最佳策略。讨厌鬼先手,他想知道他能不能获得胜利?

⌊x⌋\lfloor x \rfloor⌊x⌋ 表示 xxx 向下取整。对于非负实数来说,可以理解为抹去小数点及小数部分。
例如 ⌊1.5⌋=1,⌊2⌋=2\lfloor 1.5 \rfloor =1, \lfloor 2 \rfloor =2⌊1.5⌋=1,⌊2⌋=2。
 

输入描述:

第一行输入一个整数 nnn。

第二行输入 nnn 个整数 aia_iai​。

1≤n,ai≤2×1051\leq n ,a_i\leq 2 \times 10^51≤n,ai​≤2×105

输出描述:

如果讨厌鬼获胜,则输出 "gui"。
如果小甜妹获胜,则输出 "sweet"。

示例1

输入

复制1 2

1
2

输出

复制gui

gui

示例2

输入

复制2 2 2

2
2 2

输出

复制sweet

sweet
#include<bits/stdc++.h>
using namespace std;
int main(){long long int n,x,a=0;//a到后面会很大cin>>n;while(n--){cin>>x;if(x>1){x-=1;a+=x;}//一个数x可以分的次数就是自身-1}//x数据范围可以为1,而题目要求大于1if(a%2==1)cout<<"gui";//a就是总共可以分的次数,else cout<<"sweet";return 0;
}

这篇关于左右互博。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/739062

相关文章

5.1声道转化为左右声道

5.1声道转化为左右声道downmix http://szfzafa.blog.163.com/blog/static/11895416720120724729214/ 标题: Downmix 5.1ch to 2ch in AVS   最简单: function Dmix6Stereo(clip a) {  # 6 Channels L,R,C,LFE,SL,SR   f

Flutter-listview的item左右滑动,删除item

import 'package:flutter/material.dart';//列表左右滑动删除void main() =>runApp(MaterialApp(home: HomePage(),));class HomePage extends StatelessWidget {final List<String> items = List.generate(20, (index) =>

Ubuntu22.04版本左右,开机自动启动脚本

Ubuntu22.04版本左右,开机自动启动脚本 1. 新增/lib/systemd/system/rc-local.service中[Install]内容 vim /lib/systemd/system/rc-local.service 按 i 进入插入模式后,新增内容如下: [Install]WantedBy=multi-user.targetAlias=rc-local.servic

如何将图片左右翻转?8种方法来将图片进行左右翻转

如何将图片左右翻转?在现代数字化的图像处理过程中,图片的方向调整是常见的操作之一。左右翻转图片不仅可以改变图像的视觉效果,还可以用于修正拍摄时的角度问题,或者满足特定设计和排版需求。比如,当你拍摄的照片由于镜像效果需要调整,或者在创作过程中需要对比不同布局时,左右翻转是一个有效的工具。 图像翻转通常是为了改善照片的展示效果,使其更符合实际需要。在许多应用场景中,比如社交媒体分享、专业设计以及日常

小tip:中文英文左右padding一致两端对齐实现

by zhangxinxu from http://www.zhangxinxu.com 本文地址:http://www.zhangxinxu.com/wordpress/?p=4908 不是什么稀奇的技术,很多很多年前自己就玩耍过。 之所以今天拿出来说一下,是因为今天几个小伙伴遇到类似问题,突然发现,一些自己觉得不怎么样的东西,说不定对别人而言会有很大帮助,于是我就打算写篇短文简单介绍

数据结构-非线性结构-树形结构:有序树 ->二叉树 -> 平衡二叉树(任何节点的左右子树的高度差不大于1)-> 完全二叉树(除最底层外的其他层都被填满,且最底层左到右填入) -> 堆(优先队列)

完全二叉树:即除了最底层,其他层的节点都被元素填满,且最底层左到右填入。 完全二叉树属于平衡二叉树。 堆是一种完全二叉树,且满足以下条件: 最大堆:每个节点都比其子树所有节点大的完全二叉树;最小堆:每个节点都比其子树所有节点小的完全二叉树; 我们对堆中的结点按层进行编号,可以将堆逻辑结构映射到数组中 大顶堆:arr[i] >= arr[2i+1] && arr[i] >= arr[2i

力扣68.文本左右对齐

import java.util.ArrayList;import java.util.List;class Solution {public List<String> fullJustify(String[] words, int maxWidth) {List<String> result = new ArrayList<>(); // 创建一个列表用于存储结果int index = 0;

Android 事件分发:为什么有时候会出现事件冲突?事件的顺序是如何的?出现事件冲突如何解决呢?比如为什么左右可以滑动,而上下却不行?

目录: 一、为什么要学习事件呢? 1.在开发复杂的应用时,经常需要处理复杂的用户交互逻辑。学习事件分发机制可以帮助你更好地控制事件的传递和处理流程,从而解决一些复杂的交互问题,如滑动冲突、点击穿透等。 2.面试需要:事件冲突的原因是什么?在开发过程中,可能会遇到一些与事件处理相关的问题,如事件没有被正确传递、事件被错误地拦截等。了解事件分发机制可以帮助你更快地定位问题所在,并找到

vue-seamless-scroll实现无缝上下滚动与左右滚动

vue-seamless-scroll实现无缝上下滚动与左右滚动 上下滚动与左右滚动是我们很常见的一个功能,利用vue-seamless-scroll可以实现上下滚动与左右滚动,其官方网站地址是https://www.npmjs.com/package/vue-seamless-scroll,可以查看其用法。首先查看一下效果图:  一、

android 学习之Fragment+ViewPager实现页面左右滑动标签页

ViewPager 结合Fragment实现一个Activity里包含多个可滑动的标签页,每个标签页可以有独立的布局及响应。 如下所示。 我们可以借助TabLayout来实现顶部导航。Activity布局文件如下: <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.a