codeforces #304 546 C. Soldier and Cards() (模拟)

原创 2015年07月10日 16:47:46

题目链接:

点击打开链接

题目大意:

两个人每个人有一个队列,每次取两人队头,然后比较,将两个放到比较大的那个人的队尾,然后判断胜负

题目分析:

直接模拟就好了

代码如下:

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cstring>
#include <queue>

using namespace std;

int n,k1,k2,a;
queue<int> q1,q2;

int main ( )
{
    while ( ~scanf ( "%d" , &n ) )
    {
        scanf ( "%d" , &k1 );
        while ( k1-- )
        {
            scanf ( "%d" , &a );
            q1.push ( a );
        }
        scanf ( "%d" , &k2 );
        while ( k2-- )
        {
            scanf ( "%d" , &a );
            q2.push ( a );
        }
        int ans = 0;
        while ( true )
        {
            if ( q1.empty() || q2.empty() ) break;
            int u = q1.front() , v = q2.front();
            q1.pop();
            q2.pop();
            if ( u > v )
            {
                q1.push ( v );
                q1.push ( u );
            }
            else 
            {
                q2.push ( u );
                q2.push ( v );
            }
            ans++;
            if ( ans > 1e6 ) 
            {
                ans = -1;
                break;
            }
        }
        printf ( "%d" , ans );
        if ( ans != -1 )
            printf ( " %d\n" , q1.empty()?2:1);
        else puts("");
    }
}


版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

C-Soldier and Cards(CF546C)Codeforces Round #304 (Div. 2)

C. Soldier and Cards time limit per test 2 seconds memory limit per test 256 megabytes input s...

Codeforces Round #304 (Div. 2)C. Soldier and Cards(STL+模拟)

C. Soldier and Cardstime limit per test:2 secondsmemory limit per test:256 megabytesinput:standard i...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

Soldier and Cards(CF #304 Div.2)

写练习题的时候遇到这道题,是道简单的模拟题,然后就直接写了两个队列进行模拟,写着写着发觉有问题,还需要标记模拟过程中产生的新队列,于是赶紧修改代码,在想如何标记的时候尝试了很多中方法,其中不乏该题最水...

【codeforces 546C】Soldier and Cards

time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandar...

codeforces 546 E. Soldier and Traveling

E. Soldier and Traveling time limit per test 1 second memory limit per test 256 megabytes inpu...

Codeforces Round #304 (Div. 2) 546 E - Soldier and Traveling 最大流

题意:有n个城市m条路,每个城市里有A[i]个士兵,士兵可以留在自己的城市或者邻近的城市,最后是人数是否能为B[i] 思路: 入门最大流#include #include #include #in...

Soldier and Cards(Problem - 546C - Codeforces)

此题链接单击这里================= First sample: Second sample: 附代码 #include #include u...

CodeForces 546C Soldier and Cards(数据结构模拟)

题意:两个人各有一堆牌,每次都出最上面的一张牌,记为一次操作,牌上有个权值, 权值大的获胜,先把对方刚才出的牌放在自己牌堆的最下方,再把自己刚出的牌放在最下方。什么时候一个人的牌堆没有牌了,谁就输了,...

Codeforces Round #304 (Div. 2) D Soldier and Number Game

D. Soldier and Number Game time limit per test  3 seconds memory limit per test  256 meg...

E. Soldier and Traveling(CF546E) Codeforces Round #304 (Div. 2)

E. Soldier and Traveling time limit per test 1 second memory limit per test 256 megabyte...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)