zoukankan      html  css  js  c++  java
  • Codeforces 749C:Voting(暴力模拟)

    http://codeforces.com/problemset/problem/749/C

    题意:有n个人投票,分为 D 和 R 两派,从1~n的顺序投票,轮到某人投票的时候,他可以将对方的一个人KO,被KO的人不能投票了,这样循环,直到某一派的人全部被KO,问哪方赢。

    思路:模拟。。代码好懂。。

     1 #include <cstdio>
     2 #include <algorithm>
     3 #include <iostream>
     4 #include <cstring>
     5 #include <string>
     6 #include <cmath>
     7 #include <queue>
     8 #include <vector>
     9 #include <map>
    10 #include <set>
    11 using namespace std;
    12 #define INF 0x3f3f3f3f
    13 #define N 100010
    14 typedef long long LL;
    15 
    16 int main() {
    17     int n;
    18     string s, ss;
    19     cin >> n >> s;
    20     int a = 0, b = 0, d = 0, r = 0;
    21     while(true) {
    22         int sz = s.size();
    23         ss = ""; // ss 是当前回合没被KO的人的字符串
    24         d = r = 0;
    25         for(int i = 0; i < sz; i++) {
    26             if(s[i] == 'D') d = 1;
    27             else r = 1;
    28             if(s[i] == 'D') {
    29                 if(!a) {
    30                     b--;
    31                     ss += 'D';
    32                 } else a++;
    33             } else {
    34                 if(!b) {
    35                     a--;
    36                     ss += 'R';
    37                 } else b++;
    38             }
    39         }
    40         s = ss;
    41         if(d == 0 || r == 0) { // 如果某方都被KO
    42             putchar(d == 0 ? 'R' : 'D'); break;
    43         }
    44     }
    45     return 0;
    46 }
  • 相关阅读:
    Json2JsonArray JsonArray2StringArray
    循环结构
    类型转换代码
    字符串的截取拼接
    循环语句,选择结构的相关代码
    Java代码2-运算符简单运用
    Java代码1
    集合框架
    接口
    继承多态
  • 原文地址:https://www.cnblogs.com/fightfordream/p/6201628.html
Copyright © 2011-2022 走看看