解题思路:
注意事项:
参考代码:
import java.math.BigInteger;
import java.util.Scanner;
/*
你需要统计所有满足下列条件的长度为 n 的字符串的个数:
1、字符串仅由 A、T、C、G 组成
2、A 出现偶数次(也可以不出现)
3、C 出现偶数次(也可以不出现)
当 n=2 时,所有满足条件的字符串有如下 6 个:
TT,TG,GT,GG,AA,CC。
注: 由于这个数可能非常庞大,你只需给出对 10^9 + 7 取模的结果即可。
对于输入文件中的每一个 n,输出满足条件的字符串的个数对 10^9 + 7 取模的结果。
*/
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// System.out.println(mod);
while(sc.hasNext()){
int n = sc.nextInt();
if (n==0) return;
System.out.println(SRAR(n));
}
}
private static BigInteger SRAR(int n) {
BigInteger one = new BigInteger("1");
BigInteger Mymod = new BigInteger("1000000007");
BigInteger two = new BigInteger("2");
BigInteger Count;
Count = two.pow(n-1).multiply(((two.pow(n-1))).add(one));
return Count.mod(Mymod);
}
}
0.0分
1 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复