F - kilometraje real de 2 × B - El número real de kilometraje para 1,5 × la Y - verdadero recuento de kilometraje de menos de 500 por 500, 500 que es mayor que el valor calculado de acuerdo con las actuales exigencias de la final acumulativo calculados
Cada conjunto de datos 0 hasta el final, el extremo de entrada del archivo #
pensamiento
De entrada, se determina F / B / Y, se calcula de acuerdo a la acumulación reglas, redondeo
código
#include<iostream>#include<string>usingnamespace std;intmain(){
string begin, end;char class_code;int miles;double sum;
cin >> begin;while(begin!="#"){
sum =0;while(begin!="0"){
cin >> end >> miles >> class_code;switch(class_code){case'F':
sum += miles*2;break;case'B':
sum += miles*1.5;break;case'Y':
sum +=(miles>500? miles :500);break;}
cin >> begin;}
cout <<(int)(sum+0.5)<< endl;
cin >> begin;}return0;}