zoukankan      html  css  js  c++  java
  • L1019. 谁先倒

    划拳是古老中国酒文化的一个有趣的组成部分。酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字。如果谁比划出的数字正好等于两人喊出的数字之和,谁就输了,输家罚一杯酒。两人同赢或两人同输则继续下一轮,直到唯一的赢家出现。

    下面给出甲、乙两人的酒量(最多能喝多少杯不倒)和划拳记录,请你判断两个人谁先倒。

    输入格式:

    输入第一行先后给出甲、乙两人的酒量(不超过100的非负整数),以空格分隔。下一行给出一个正整数N(<=100),随后N行,每行给出一轮划拳的记录,格式为:

    甲喊 甲划 乙喊 乙划

    其中“喊”是喊出的数字,“划”是划出的数字,均为不超过100的正整数(两只手一起划)。

    输出格式:

    在第一行中输出先倒下的那个人:A代表甲,B代表乙。第二行中输出没倒的那个人喝了多少杯。题目保证有一个人倒下。注意程序处理到有人倒下就终止,后面的数据不必处理。

    输入样例:
    1 1
    6
    8 10 9 12
    5 10 5 10
    3 8 5 12
    12 18 1 13
    4 16 12 15
    15 1 1 16
    
    输出样例:
    A
    1
    时间限制
    400 ms
    内存限制
    65536 kB
    代码长度限制
    8000 B
    判题程序
    Standard
    作者
    陈越
     
    注意:这道题他说的是最多和多少杯不倒,所以和当前和了多少杯比较时要加一。
     

    #include <stdio.h>
    #include <stdlib.h>

    typedef struct HQ{
     int a;
     int b;
     int c;
     int d;
    }hq;

    int main()
    {
     int x;
     int y;
     int n;
     int i;
     int count1 = 0, count2 = 0;
     hq h[100];

     scanf("%d %d", &x, &y);
     scanf("%d", &n);

     for(i = 0; i < n; i++)
     {
      scanf("%d %d %d %d", &h[i].a, &h[i].b, &h[i].c, &h[i].d);
     }

     for(i = 0; i < n; i++)
     {
      if(h[i].b == h[i].a+h[i].c && h[i].d != h[i].a+h[i].c)
      {
       count1++;
       if(count1 == x+1)
       {
        printf("A\n%d\n", count2);
        return 0;
       }
      }
      if(h[i].d == h[i].a+h[i].c && h[i].b != h[i].a+h[i].c)
      {
       count2++;
       if(count2 == y+1)
       {
        printf("B\n%d\n", count1);
        return 0;
       }
      }
     }

     return 0;
    }


  • 相关阅读:
    leetcode35. search Insert Position
    leetcode26.Remove Duplicates from Sorted Array
    leetcode46.Permutation & leetcode47.Permutation II
    leetcode.5 Longest Palindromic Substring
    [转载] C++中new和malloc的区别
    [转载] C++中的自由存储区和堆
    xCode8以及iOS10 的新特性
    cell上添加倒计时,以及时差问题的解决
    cell的复用机制
    iOS 懒加载模式
  • 原文地址:https://www.cnblogs.com/beimengmuxi/p/6561646.html
Copyright © 2011-2022 走看看