Nepire的校OJ入门题解—17蓝桥选拔篇(六)

欢迎来到Nepire的校OJ入门题解——————17蓝桥选拔篇(六)

这次我主要是讲解第⑨届蓝桥杯全国软件和信息技术专业人才大赛校内选拔赛的七道题目,中间可能会扯到一些其他东西,然后就开始我们的入门题解吧呜喵

Problem F:道歉

Description

小张发现那家洗脚城是正规的,因此想要和他的女朋友翠花道歉,于是邀请翠花第二天去看《左耳》,结果第二天小张去了电影院,翠花去了医院的耳鼻喉科。小张没有道歉成功,于是又去买了一朵花送给翠花。
这朵花有n个花瓣,翠花想和小张玩个游戏。他俩轮流摘花瓣,规定每次只可以摘一片或者相邻的两片(如果某片花瓣被摘,和它相邻的两片花瓣不能算相邻),谁摘到最后一片算谁赢。小张先手,他想知道如果两人都采用最优策略他是否能赢。

Input

输入数据第一行是一个整数T(T <= 10),表示有T组测试数据。
每组数据输入一个整数n(0 < n <= 100000)。

Output

每组数据输出一行,如果小张能赢,就输出“Win”,否则输出“Lose”。

Sample Input

2
2
5

Sample Output

Win
Lose

Source

解题思路

这题可能是这次考试代码最简单的,后摘花的除了片数为2或3必赢,所谓的最优策略小Nep觉得应该是前一步对方摘了多少,自己便相邻的摘掉多少,这样对称的玩下去,最后一步的状态都是两片或三片。

参考代码

#include <ctype.h>
#include <errno.h>
#include <float.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <wchar.h>
#include <wctype.h>
#include <assert.h>
#include <limits.h>
#include <locale.h>
#include <math.h>
int main()
{
    int t,n;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d",&n);
        if(n==2||n==3)
        {
            printf("Win\n");
        }
        else
        {
            printf("Lose\n");
        }
    }
}

下次17蓝桥校选拔Problem G,欢迎大家在下面评论建议

——Nepire

发布了22 篇原创文章 · 获赞 8 · 访问量 1万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览