A - New Year and Naming
Posted dreamingbetter
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了A - New Year and Naming相关的知识,希望对你有一定的参考价值。
题意:输入两个序列Sn和Tm,序列包含n/m个用空格隔开的子串,输入年份year,循环地从两个序列按顺序分别抽出一个子序列,组成一个可以表示年份的字符串,此题类似天干地支纪年法。
思路:年份魔上每段子序列的个数,两端组成的字符串即表示该年份。
不是很会讲解题目,细节讲不出,重点抓不到。
#include<stdio.h> #include<string.h> int main(){ int n,m,q,y,i,j,year,a,b,k; char s[50][50],t[50][50],s1[1100],t1[1100]; char *temp1,*temp2; while(~scanf("%d %d ",&n,&m)){ gets(s1); temp1=strtok(s1," "); i=1; while(temp1){ strcpy(s[i],temp1); temp1=strtok(NULL," "); i++; } strcpy(s[0],s[--i]); gets(t1); temp2=strtok(t1," "); i=1; while(temp2){ strcpy(t[i],temp2); temp2=strtok(NULL," "); i++; } strcpy(t[0],t[--i]); scanf("%d",&q); while(q--){ scanf("%d",&year); a=year%n; b=year%m; printf("%s%s",s[a],t[b]); printf(" "); } } }
以上是关于A - New Year and Naming的主要内容,如果未能解决你的问题,请参考以下文章
B - New Year and Ascent Sequence
Codeforces 536F Lunar New Year and a Recursive Sequence | BSGS/exgcd/矩阵乘法