#include
#include
#include
using namespace std;
int n,na,nb;
int Na[205],Nb[205];
int ans_a,ans_b;
int chua,chub;
int ab[5][5]={
{0,0,1,1,0},
{1,0,0,1,0},
{0,1,0,0,1},
{0,0,1,0,1},
{1,1,0,0,0},
};
int main(){
ifstream fin("rps.in");
ofstream fout("rps.out");
memset(Na,-1,sizeof(Na));
memset(Nb,-1,sizeof(Nb));
fin>>n>>na>>nb;
for(int i=1;i<=na;i++) fin>>Na[i];
for(int i=1;i<=nb;i++) fin>>Nb[i];
ans_a=ans_b=0;
chua=chub=0;
for(int i=1;i<=n;i++){
chua++;
chub++;
if(chua==na+1) chua=1;
if(chub==nb+1) chub=1;
if(ab[Na[chua]][Nb[chub]]==1) ans_a++;
else if(Na[chua]!=Nb[chub]) ans_b++;
}
fout<
直接暴力的记忆化搜索,我的水平貌似只能过5个点.
直接枚举每一个点作为装置所在地,可以过全部.但是弱弱的说我当初爆 0 了,好残忍,我没事干跑去优化,果然是No zuo no die啊.