1345: QAQ
1345: QAQ
時(shí)間限制:?1 Sec??內(nèi)存限制:?256 MB
題目描述
給出一個(gè)字符串,讓你找到其中一共有多少個(gè)子序列"QAQ"。子序列"QAQ"可以不連續(xù),但是字母順序必須是準(zhǔn)確的。
?
?
輸入
第一行:一個(gè)整數(shù)T,表示測(cè)試實(shí)例個(gè)數(shù)。
對(duì)于每組測(cè)試實(shí)例:包含一個(gè)長(zhǎng)度為?n?(1?≤?n?≤?100)的字符串。
?
輸出
每組測(cè)試實(shí)例輸出一行:包含一個(gè)整數(shù),子序列"QAQ"的個(gè)數(shù)。
?
樣例輸入
2 QAQAQYSYIOIWIN QAQQQZZYNOIWIN?
樣例輸出
4 3?
提示
如第一組樣例:共有4個(gè)子序列"QAQ",分別如下:
?"QAQAQYSYIOIWIN", "QAQAQYSYIOIWIN", "QAQAQYSYIOIWIN", "QAQAQYSYIOIWIN".
?
import java.util.Scanner;public class Main {private static int t;public static void main(String[] args) {Scanner sc = new Scanner(System.in);Scanner sc2 = new Scanner(System.in);int n = sc.nextInt();String s[] = new String[n];for (int i = 0; i < n; i++) {s[i] = sc.next();}for (int i = 0; i < s.length; i++) {f(s[i],1);System.out.println(t);t = 0;}}private static void f(String s, int j) {if(j==1||j==3) {for (int i = 0; i < s.length(); i++) {if(s.charAt(i) =='Q') {f(s.substring(i),j+1);}}}else if(j==2) {for (int i = 0; i < s.length(); i++) {if(s.charAt(i) =='A') {f(s.substring(i),j+1);}}}else if(j==4) {t++;}} } /**************************************************************Problem: 1345User: 20161514325Language: JavaResult: 正確Time:334 msMemory:39948 kb ****************************************************************/?
總結(jié)
- 上一篇: 使用Scratch制作打弹球游戏-反弹球
- 下一篇: “2021云管和云网大会”在京召开