上海市コンピュータ学会コンテストプラットフォーム8月試合丙組「販促サイコロ」問題解


タイトルの説明
店は販促活動をしている.お客様一人一人がお支払いの際、サイコロを1回投げる機会があり、6を投げると割引が得られ、6ではない場合までサイコロを投げ続けることができます.受賞ルールは次のとおりです.
  • もし3つの6を投げたら、1000元割引します.
  • そうでなければ、連続して2つの6を投げたら、100元割引されます.
  • そうでなければ、6を投げたら、10元割引されます.

  • 愛ちゃんが投げたサイコロの点数を与えた場合、彼女が得られる割引金額を出力してください.
    入力フォーマット
    入力は、いくつかの整数(最大3つ)で構成されます.
  • 入力に3つの数字があれば、前の2つの数字が6であることを保証します.
  • 入力に2つの数字があれば、最初の数字が6で、後の数字が6ではないことを保証します.
  • 入力が1つしかない場合は、その数字が6でないことを保証します.

  • 出力フォーマット
    ≪単一の整数|Single Integer|oem_src≫:取得した割引金額を示します.
    データ範囲
    入力された各数字が1~6の間であることを保証します.
    サンプルデータ
    サンプル1
    入力
    6 3
    しゅつりょく
    10
    サンプル2
    入力
    6 6 6
    しゅつりょく
    1000
    構想
    6でなければ終わりなのでwhileで読み込み、6でなければbreak、sumで何個6あるか統計してpow(10,sum)を出力します.
    コード#コード#
    #include
    using namespace std;
    int main()
    {
    	int sum=0,a;//  6   ,    
    	while(cin>>a)//    
    	{
    		if(a!=6)
    		{
    			break;//    6   
    		}
    		sum++;//6   +1
    		if(sum==3)
    		{
    			break;//          
    		}
    	}
    	if(sum==0)//     6      
    	{
    		cout<<0<

    問題を作るとき、私はずっと6つを3つ投げ出したらどうするかと思っていましたが、水を1本しか買わなかったらどうしますか.