电脑网络 手机数码 生活 游戏 体育运动 明星影音 休闲爱好 文化艺术 就业职场 教育科学 健康医疗 商业理财 情感家庭 地区 其他

石头剪刀布c语言

时间:2023-02-03 02:32:36

一天,小A和小B正好在玩石头剪刀布。已知他们的出拳都是有周期性规律的,比如:“石头-布-石头-剪刀-石头-布-石头-剪刀

……”,就是以“石头-布-石头-剪刀”为周期不断循环的。请问,小A和小B比了N轮之后,谁赢的轮数多?

输入:

输入包含三行。 第一行包含三个整数:N,NA,NB,分别表示比了N轮,小A出拳的周期长度,小B出拳的周期长度。0 < N,NA,NB

 < 100。 第二行包含NA个整数,表示小A出拳的规律。 第三行包含NB个整数,表示小B出拳的规律。 其中,0表示“石头”,

2表示“剪刀”,5表示“布”。相邻两个整数之间用单个空格隔开。

输出:

输出一行,如果小A赢的轮数多,输出A;如果小B赢的轮数多,输出B;如果两人打平,输出draw。

最佳答案

程序参考:

#include <stdio.h>
int main()
{
 int i, a, b, c[100], m[1
 int x, y, k, l;
 while (~scanf("%d %d %d", &n, &a, &b))
   {
     k = 0;
     l =
     x = 0;
     y = 0;
     for (i = 0; i < a; i++)
       scanf("%d", &c[i]);
     for (i = 0; i < b; i++)
       scanf("%d", &m[i]);
     f < n; i++, x++, y++)
       {
         if (x == a || y == b)
           {
             if (x == a)
               x = 0;
             if (y == b)
               y = 0;
           }
         if (c[x] == 0 && m[y] == 2)
           k++;
         else if (c[x] == 2 && m[y] == 5)
           k++;
         else if (c[x] == 5 && m[y] == 0)
           k++;
         else if (m[y] == 0 && c[x] == 2)
           l++;
         else if (m[y] == 2 && c[x] == 5)
           l++;
         else if (m[y] == 5 && c[x] == 0)
           l++;
       }
     if (k > l)
       printf("A\n");
     if (k < l)
       printf("B\n");
     if (k == l)
       praw\n");
   }
 return 0;
}

相关推荐
  • c++语言石头剪刀布
  • 石头剪刀布,他输了怎么办?
  • 用c语言做一个石头剪刀布的游戏
  • 英语课堂石头剪刀布游戏歌词
  • C语言编程:剪刀石头布的小游戏
  • 用c语言编写石头剪刀布的游戏要求如下
  • 求做C语言石头剪刀布的程序~~~~~~~~~~~希望是原创!~~~
  • © 孔德问答