Problem:
大当たり!

あいづ学園大学附属高校の大阿足あたる君は、スロットマシーンで遊ぶことにしました。

このマシーンは、メダルを投入すると、3 つのリールが回転を始め、各リールが自動的に止まります。通常の1ゲーム(通常ゲーム)は 3 枚のメダルを投入し、図柄が揃うと、その図柄に応じて次のとおりメダルが得られます。

図柄の揃い方によっては特別なサービスが開始されます。 7 の図柄が 3 つ揃うとビッグボーナスが始まり、ボーナスゲームを 5 ゲーム行うことができます。また、BAR の図柄が 3 つ揃うとレギュラーボーナスが始まり、ボーナスゲームを 3 ゲーム行うことができます。

スターの図柄が 3 つ揃うと無料ゲームが開始され、メダルを得ることはできませんが、次のゲームをメダルの投入なく始めることができます。

ボーナスゲーム中は 1 ゲームあたり 2 枚のメダルを投入すると、自動でブドウの図柄が 3 つ揃い、メダルを 15 枚得ることができます。

大阿足君は 100 枚のメダルを持ってマシーンで遊び始めました。しばらく遊び、通常ゲームになった状態で終了しました。手元に残ったメダルは何枚となったでしょうか。

プレイ情報を入力とし、手元に残ったメダルの数を出力するプログラムを作成して下さい。 プレイ情報として、ビッグボーナスの回数 b、レギュラーボーナスの回数 r、通常ゲーム中にブドウが揃った回数 g、チェリーが揃った回数 c、スターが揃った回数 s、総ゲーム数 t が与えられます。

なお、t にはボーナスゲームの回数を含みます。また、メダルはゲームの途中になくなることはありません。

Input

複数のデータセットの並びが入力として与えられます。入力の終わりはゼロむっつの行で示されます。
各データセットは以下の形式で与えられます。

b r g c s t

b, r, g, c, s はそれぞれ 0 以上 200 以下の整数、t は 1000 以下の整数です。

データセットの数は 120 を超えません。

Output

入力データセットごとに、手元に残ったメダルの枚数を１行に出力します。

Sample Input

3 2 30 3 26 226
9 0 18 3 20 118
5 5 12 2 15 203
7 4 19 2 22 197
7 4 24 4 17 209
0 0 0 0 0 0

Output for the Sample Input

127
793
414
629
617

Solution in JAVA (judge verdict: Accepted)

import java.util.Scanner;

public class Main {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		Scanner cin = new Scanner(System.in);
		while(true){
			int coin=100;
			int b = cin.nextInt();
			int r = cin.nextInt();
			int g = cin.nextInt();
			int c = cin.nextInt();
			int s = cin.nextInt();
			int t = cin.nextInt();
			if(b+r+g+c+s+t==0){
				break;
			}
			t = t-b*5-r*3;
			int bonusGame=b*5+r*3;
			for(int i =0; i < bonusGame;i++){
				coin+=13;
			}
			for(int i = 0; i < b;i++){
				coin+=12;
			}
			for(int i = 0; i < r;i++){
				coin+=12;
			}
			for(int i = 0; i < g;i++){
				coin+=4;
			}
			for(int i = 0; i < c;i++){
				coin-=1;
			}
			t = t-b-r-g-c-s;
			coin -= t*3;
			System.out.println(coin);
		}
	}

}