NOIP 2014提高组 生活大爆炸版 石头剪刀布【题解】

vijos原题地址







自己发现的一些小问题

  1. 注意等于时 是两个等号
  2. 出拳的周期记得也要循环 也要判断
  3. 给出的表格是不完整的 你自己需要推出那一半的阴影结果
  4. 竖行表示第一个人 横行表示第二个人
  5. 记得给 得分 周期 这两个变量初始化
#include<iostream>
using namespace std ;
int main()
{
	int afenshu = 0 ;
	int bfenshu = 0 ;
	int a[200] , b[200] ;
	int n , na , nb ;
	int al = 0 , bl = 0 ;
	cin >> n >> na >> nb ;
	for(int i=1 ; i <= na ; i++ )
		cin>>a[i] ;
	for(int i=1 ; i <= nb ; i++ )
		cin>>b[i] ;	
		
	
     for(int i=1 ; i<=n ; i++ )
     {
        al ++ ;
        bl ++ ;
        if(al == na + 1 )
        al = 1 ;//重新回到1 
        if(bl == nb + 1 )
        bl = 1 ;
        
	if(a[al] == 0)//两个等号啊啊啊啊啊调程序调了好久楞是没找出错误来呜呜呜 
	{
		if(b[bl] == 1) bfenshu ++ ;
		if(b[bl] == 2) afenshu ++ ;
		if(b[bl] == 3) afenshu ++ ; 
		if(b[bl] == 4) bfenshu ++ ;
	}
	
	if(a[al] == 1)
	{
		if(b[bl] == 0 )  afenshu ++ ;
		if(b[bl] == 2 )  bfenshu ++ ;
		if(b[bl] == 3 )  afenshu ++ ;
		if(b[bl] == 4 )  bfenshu ++ ;
	}
	if(a[al] == 2 )
	{
		if(b[bl] == 0 )	bfenshu ++ ;
		if(b[bl] == 1 )	afenshu ++ ;
		if(b[bl] == 3 )	bfenshu ++ ; 
		if(b[bl] == 4 )  afenshu ++ ;
	}
	if(a[al] == 3 )
	{
		if(b[bl] == 0 )	bfenshu ++ ;
		if(b[bl] == 1 )	bfenshu ++ ;
		if(b[bl] == 2 )	afenshu ++ ;
		if(b[bl] == 4 )	afenshu ++ ;
	} 
	if(a[al] == 4 )
	{
		if(b[bl] == 0 )	afenshu ++ ;
		if(b[bl] == 1 )	afenshu ++ ;
		if(b[bl] == 2 )	bfenshu ++ ;
		if(b[bl] == 3 )	bfenshu ++ ;
	}
//打表出省一!!!!	
//冲鸭!
}
	cout << afenshu << " " << bfenshu << endl ;
	return 0 ;
 } 



  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值