洛谷 P1328 [NOIP2014 提高组] 生活大爆炸版石头剪刀布

题解:

cpp 复制代码
#include<iostream>
#include<vector>
//定义二维数组,直接标识不同出法相应对应关系
int mark[5][5]={{0,-1,1,1,-1},{1,0,-1,1,-1},{-1,1,0,-1,1},{-1,-1,1,0,1},{1,1,-1,-1,0}};
void JudgeScore(int A,int B,int& countA,int& countB){
    if(mark[A][B]==1) countA++;
    else if(mark[A][B]==-1) countB++;
}
int main(){
    int N,NA,NB,countA=0,countB=0;
    std::cin>>N>>NA>>NB;
    std::vector<int> A(NA),B(NB);
    for(int i=0;i!=NA;++i) std::cin>>A[i];
    for(int i=0;i!=NB;++i) std::cin>>B[i];
    int i=0,j=0;
    while(N--){
        JudgeScore(A[i],B[j],countA,countB);
        i=(i+1)%NA,j=(j+1)%NB;
        //每次下标移动到数组结尾时从零开始,本质就是取模运算的过程
    }
    std::cout<<countA<<" "<<countB;
    return 0;
}

结果:

相关推荐
cpp_25014 小时前
P1796 汤姆斯的天堂梦
数据结构·c++·算法·题解·洛谷·线性dp
Lisssaa4 小时前
打卡第二十六天
c++
4ever.ov04 小时前
定时器/时间轮
开发语言·c++·c·muduo·llinux
C^h5 小时前
RTthread中的内存池理解
linux·数据库·c++·算法·嵌入式
lcj25115 小时前
蓝桥杯C++:数据结构(功能导向速查)
数据结构·c++·蓝桥杯
liulilittle5 小时前
eBPF tc prog
服务器·网络·c++·网络协议·tcp/ip·性能·perf
cui_ruicheng5 小时前
C++ 新特性(下):可变参数模板与 STL 扩展机制
开发语言·c++·c++11
|_⊙6 小时前
C++ 多态
c++
福楠6 小时前
现代C++ | 智能指针
c语言·开发语言·c++
汉克老师6 小时前
GESP5级C++考试语法知识(十二、递归算法(二))
c++·算法·记忆化搜索·时间复杂度·递归算法·gesp5级·gesp五级