第二期白銀組第七題

統計每個元音字母在字符串中出現的次數。
Input
輸入數據首先包括一個整數n,表示測試實例的個數,然後是n行長度不超過100的字符串。
Output
對於每個測試實例輸出5行,格式如下:
a:num1
e:num2
i:num3
o:num4
u:num5
多個測試實例之間由一個空行隔開。

請特別注意:最後一塊輸出後面沒有空行:)
Sample Input
2
aeiou
my name is ignatius
Sample Output
a:1
e:1
i:1
o:1
u:1

a:2
e:1
i:3
o:0
u:1

下面是AC代碼:

#include<iostream>
using namespace std;
int main()
{
	int a;
	while (cin >> a)
	{
		long long*p = new long long[a];     //得出a個結果.
		int j;
		for (j = 0; j < a; j++)//分別計算a次
		{
			long long d = 1;    //這是結果
			int b, c;
			cin >> b >> c;          //共b個,計算第c個
			int k;
			for (k = 0; k < (b-c); k++)
			{
				d = d * 2;
			}
			p[j] = d;
		}
		int q;
		for (q = 0; q < a; q++)
		{
			cout << p[q] << endl;
		}
	}
}

三個柱子不難發現最上面的盤子逢2進1
第二個盤子每動一次,第一個都要動兩次,所以每個盤子動的次數爲上一個的2分1次
n個一共n-1次,加上上面的規律,明顯就是:
n個盤,第a個
2的(n-a)次方
然後解得答案。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章