P15893 [HackerEarth] In the streets of Portugal lived a young boy named Oliver. He was the son of James and Jenny who were both Oncologists at the city hospital while his uncle Ben, worked as a lawyer in a l
普及-
题目描述

In the streets of Portugal lived a young boy named Oliver. He was the son of James and Jenny who were both Oncologists at the city hospital while his uncle Ben, worked as a lawyer in a local court at Alcácer do Sal. Oliver, being a great fan of Cristiano Ronaldo, he wanted to be the best footballer the world has ever seen.

He knows that this would take years of practice and hard work to achieve a goal as big as this. His uncle had seen Ronaldo practicing once in the field. He had a very unique practice strategy. For improving his dribbling skills and speed, he placed a ** string S** in a straight line in front of him. The beginning and the end of S were marked by the symbol $.

This is how he practiced:
He stood at the first $, moved to the next letter in front of him, made a note of it and replaced it with $ and started running towards the end of the string and stopped at the very first $ that comes on his way. After that, he came back by one letter and compared it with the previously noted letter. If these letters are not same, he quits his practice session for the day but if they were equal, he replaces this letter by a $ symbol again and then runs towards the other end of the string unless he finds a $ and repeats the process till he is left with no letter in the string that is not a $.

Uncle Ben created very long strings and gave them as a practice set piece to Oliver. To make sure that Oliver completes the practice sessions, he gave the letters of the strings some value. The string S contains English alphabets only. Both lowercase and uppercase alphabets have a value from 1 to 26 . $ has a value = 100.
Ben asked Oliver to note down and add the values of alphabets every time he encounters them during his practice session.
Your task is to help Oliver in adding such big numbers as he good in football but not in mathematics.
Refer to the sample test cases for further clarity.

INPUT:
The first line contains a single integer T, the number of test cases.
In each of the next T lines contain a string S whose description is given above.

OUTPUT:
Display the sum that Oliver calculates for each string in a separate line.

CONSTRAINTS:
1 ≤ T ≤ 10
3 ≤ |S| ≤ 10^6

Instructions
Write modular code
Comment your code properly

SAMPLE INPUT
3
$aa$
$abca$
$AbA$

SAMPLE OUTPUT
303
421
509

Explanation

Test Case #1:

$aa$
he starts from first $ and goes forward to a, replaces it with '$' and then moves forward until he encounters a $ ( $ + a + a + $ = 202 ). string - a '$' . Then he comes back to 'a' (202+1 = 203) and replaces it with '$'. string - '$' $ Then he comes all the way searching for any other character left towards the beginning of the string until he encounters a '$'. string $'$'.

SUM = 303.

Test Case #2:
$abca$
he starts from first $ and goes forward to 'a', replaces it with '$' and then moves forward until he encounters a '$' ( $ + a + b + c + a + $ = 207 ). string - bca'$'. Then he comes back to 'a' (207+1=208) and replaces it with $. String - bc'$'$. Then he moves back towards the beginning until he encounters a $. String $ '$'bc ( 208 + 2 + 3 +100 = 313). He moves forward to 'b', replaces it with $ and moves towards the end. String- $c'$'$ (313+2+3+100 = 418 ) then he comes back to 'c' replaces it with $ and quits his practice as c != b ( 418 + 3 = 421 ).

SUM = 421

test case 3
$AbA$
he starts from first $ and goes forward to 'A', replaces it with '$' and then moves forward until he encounters a '$' ( $ + A + b + A + $ = 204 ). string - bA'$'. Then he comes back to 'A' (204+1=205) and replaces it with $. String - b'$'$. Then he moves back towards the beginning until he encounters a $. String $'$'b ( 208 + 1 +100 = 309). He moves forward to 'b', replaces it with $ and moves towards the end. String- $'$'$ (309+100 = 409 ) then he comes back to meet '$' and ends his practice ( 409+100=509).

SUM = 509

输入格式

见题面

输出格式

见题面

样例输入
10 $A$ $AA$ $ZKjHVCMkWozNVhIvGWqJFyqcWTOjoRGCnnMhmQXwcwxvIEslDRVrcqTnmvpyQOWFNALLtDbGconhaHhckPpBAWPmicZpjwCVhfIWfIhKQsZEMFwfcuSNBcMExoDDEBHnymBisTWcTdzWbHhGkHdWOioaGXUBxCfbqfWMzceuaPBnhOdfQruiPUKoGjyxUianEtuaDhpLPrAmrnGfosvgiuFaYzvbfuaggPdUuXjfkOiphSbdtevFAZOcIxfKSXzFjHxbWrSIUaxSynBDIixIFyQViMHTDpyoSuajEuydEQPwcJpnYuSoEnXdKFvzcODwhVmeitTnaamDpyokVWKEZkROqmkmrorAtFvuyCMHUFzsjDMCHFsQGBXkQfFGovCEFsqVAEQQolCEyIVdDeFMpcBKCBzQSWivqyeKUFpOfLTarMlltbXMiYsCjSEyqJBmUmVrNgtYhxkZMqnlgDhLjXoCmdXzdIPkKykNgqAKtHHvxWnjEDsQQsDEjnWxvHHtKAqgNkyKkPIdzXdmCoXjLhDglnqMZkxhYtgNrVmUmBJqyESjCsYiMXbtllMraTLfOpFUKeyqviWSQzBCKBcpMFeDdVIyECloQQEAVqsFECvoGFfQkXBGQsFHCMDjszFUHMCyuvFtArormkmqORkZEKWVkoypDmaanTtiemVhwDOczvFKdXnEoSuYnpJcwPQEdyuEjauSoypDTHMiVQyFIxiIDBnySxaUISrWbxHjFzXSKfxIcOZAFvetdbShpiOkfjXuUdPggaufbvzYaFuigvsofGnrmArPLphDautEnaiUxyjGoKUPiurQfdOhnBPaueczMWfqbfCxBUXGaoiOWdHkGhHbWzdTcWTsiBmynHBEDDoxEMcBNSucfwFMEZsQKhIfWIfhVCwjpZcimPWABpPkchHahnocGbDtLLANFWOQypvmnTqcrVRDlsEIvxwcwXQmhMnnCGRojOTWcqyFJqWGvIhVNzoWkMCVHjKZ$ $vXOmnTMPbsdomEdYAxJcqyNdiegPmmUgzlErXTZqcLCDjznROnPUcxleNjGpJnKicSwngkFJorYvBbVceARdsHvxSmgsJJXAWMHbfcUABcQqzslWeRlTDPTKEzheTprezFkLcvilVwuRLIWZknjEFuDjXgFYlvjppwiAAhuXLLgHCowfjtlMBTlJSLuwlfxolAtdsPsSIFBlkysRnKqTybFYQbogjpLqxFfZPfkloqaLVmNrctfygFeizsAPkLyWMgFFkOXEUzSCdZGPDGsXATTkBuOVsqMqzGgeffiZlXXjTeQKKeVjHaOXZuVGmVvncTDtVakiWOpHYnzwYpeDwceHoVFeTOuDATNOZxckxiwKikxXlhkedRuBswCDIATLVDBXXHeOYcaFzWEwVhUGtHiBbUNlQrckaMXupuOJZMrTRduLiPOgLvNfOBBXWhHzbgWOGkmviDbLbOsLQPmdKmdegdnAVGJVhJtLwVZtKbMendIiOxZvnvZxOiIdneMbKtZVwLtJhVJGVAndgedmKdmPQLsObLbDivmkGOWgbzHhWXBBOfNvLgOPiLudRTrMZJOupuXMakcrQlNUbBiHtGUhVwEWzFacYOeHXXBDVLTAIDCwsBuRdekhlXxkiKwixkcxZONTADuOTeFVoHecwDepYwznYHpOWikaVtDTcnvVmGVuZXOaHjVeKKQeTjXXlZiffegGzqMqsVOuBkTTAXsGDPGZdCSzUEXOkFFgMWyLkPAszieFgyftcrNmVLaqolkfPZfFxqLpjgobQYFbyTqKnRsyklBFISsPsdtAloxflwuLSJlTBMltjfwoCHgLLXuhAAiwppjvlYFgXjDuFEjnkZWILRuwVlivcLkFzerpTehzEKTPDTlReWlszqQcBAUcfbHMWAXJJsgmSxvHsdRAecVbBvYroJFkgnwSciKnJpGjNelxcUPnORnzjDCLcqZTXrElzgUmmPgeidNyqcJxAYdEmodsbPMTnmOXv$ $zzQalbZBccMfLXVdDCzTmlGziuXNWafaatJZAHOpFENjRBxmYEHBJcrcACztfgRJsObcwTdkCfOgQwyaDDAKPDMwzVgZsKEXppkpNsJNImcUwGVKnEnrtJvQlGjgmMOAoImuYgUUiRmmzaaOBYVSgkbiQGJtkCqyjosSKEzvGzpkmgMQfVMuippxSFvuiWDpAEooYqcYFOEbiLZjCjfNSinKiuDvLUxZKVSFKfGdGNJODHBSKojmUHCcaCqpvhfPCXxliDRkvbnsrIPJhqZNKVrEGRXcYBHizpSjHPwCXVsYUHPFJtPPGKergaNPGPzTsXrTnENxvfmJzIQCKGoEfXWKoROywfsjifiQwapjpKhaVflLRDsFejqdpEEOneKOIFwtGPGmdUocfuFuHiiTTBkDKGjIWuEuNjLlLLdihGXxMaYTHYMRJFVXDcUeRutcrMdQjnWhjIcQltNgaiaaiYYSSxvZdvhCqBgofTZNMHKDiMBMOthVTqTVhtOMBMiDKHMNZTfogBqChvdZvxSSYYiaaiagNtlQcIjhWnjQdMrctuReUcDXVFJRMYHTYaMxXGhidLLlLjNuEuWIjGKDkBTTiiHuFufcoUdmGPGtwFIOKenOEEpdqjeFsDRLlfVahKpjpawQifijsfwyORoKWXfEoGKCQIzJmfvxNEnTrXsTzPGPNagreKGPPtJFPHUYsVXCwPHjSpziHBYcXRGErVKNZqhJPIrsnbvkRDilxXCPfhvpqCacCHUmjoKSBHDOJNGdGfKFSVKZxULvDuiKniSNfjCjZLibEOFYcqYooEApDWiuvFSxppiuMVfQMgmkpzGvzEKSsojyqCktJGQibkgSVYBOaazmmRiUUgYumIoAOMmgjGlQvJtrnEnKVGwUcmINJsNpkppXEKsZgVzwMDPKADDaywQgOfCkdTwcbOsJRgftzCAcrcJBHEYmxBRjNEFpOHAZJtaafaWNXuizGlmTzCDdVXLfMccBZblaQzz$ $JfkmJIbtvuwFRbOwAEefvCGjhcxrBCKJyRwxaHjcHeuvXvztUbKFBZWOicNoseszRLunoSYBGWkdAVxUCfihneBWYnFJmNyKwICjlNjOlJFVfLAzmxGWzuvUYRZzviHgxYanqKKlwUFdoOZVpriFOfITHwPBxpllZxetcsPcaMoGUMnhFLHAuNRKpUimnJQtqKrfzxhZKYPfJmwTsiICfGvmDVDYQclheeiFSrWnlIXwBYanmiMmnEDddzysCcYusObdEgYFIxOCUZVBGcnUdbdvwmiawvoWUbfSOJRREceLuwHIkMByWhhMQBIOmZJeGvHFnAcOXZcffWojfLJUloVyQRfdNJGzbXSfrnEhgjkLaAPuDOppqtHZSIhPAXXALEVEqwoiYBdHiviUTezQCzSbnEEnPOPiJAYAQEojUOyaaWNwVfyJeadZVQQyacOMUNVzwQOmHilKIfMrHbsBMWzWaVFntWUHzoAjneczElDffiPmnERHnKsKnHREnmPiffDlEzcenjAozHUWtnFVaWzWMBsbHrMfIKliHmOQwzVNUMOcayQQVZdaeJyfVwNWaayOUjoEQAYAJiPOPnEEnbSzCQzeTUiviHdBYiowqEVELAXXAPhISZHtqppODuPAaLkjghEnrfSXbzGJNdfRQyVolUJLfjoWffcZXOcAnFHvGeJZmOIBQMhhWyBMkIHwuLecERRJOSfbUWovwaimwvdbdUncGBVZUCOxIFYgEdbOsuYcCsyzddDEnmMimnaYBwXIlnWrSFieehlcQYDVDmvGfCIisTwmJfPYKZhxzfrKqtQJnmiUpKRNuAHLFhnMUGoMacPsctexZllpxBPwHTIfOFirpVZOodFUwlKKqnaYxgHivzZRYUvuzWGxmzALfVFJlOjNljCIwKyNmJFnYWBenhifCUxVAdkWGBYSonuLRzsesoNciOWZBFKbUtzvXvueHcjHaxwRyJKCBrxchjGCvfeEAwObRFwuvtbIJmkfJ$ $wJBSIgCkXCuYzsgUCNUozKSKfDIfyatDoiqMkwebThQuStATKkbgExGrtbrbtpLIEhjPaVxBgMfoxApnXvvwrzCRSdYuJiojsohSnSNmZNhEjofiwECTLIAzQJWPVRdvbPmHSwOxCYLtUomTsswfqPAyvjAdsHTagXXZGiivsPcetWveRJVAZpOeYPxUsRVxSzEQnDLlxPqPGpvlbEawnDbgBGaapfLSYBKcfuiRAWdlTmkKdDDpCvtxoxiGKNSPMVsfNAGBOVqyiXhAAKUdPUuHldGHcpeGUzDVKMirfloZmRlpLDUXqQVPnAcMkqRLYDtZTVfjgvHCyNNHAQGyPMtyHDZcYWSgVQFXeziOJOLquXSvpDUFbUkkOKgOjVfiwihxHZsiPBqvhMEuleLmOWqfttiERGadFFUMQCymGDLFckBzbTCVCPACaRFhhVpcJIdloQQrTYMFJQTKDliEygdtXpENrhmYeQVKLRbnHRJmAicuOVOVAPRhRPAdOVOucgAmJRHnbRLqVQeYkhsNEpXtdcycilDKIQJFMYTrQQolbIJcpVhhFRaCAPCVCTbzBkcFLDGmyCQMUFOdaGREittfqWOmLeluEahvqBJisvHPhiwifVjOgKOjkUbFUDpvSXJVLOJOBFeXFQVgSWYcZDkytMPyCQAHNNyCHvgjZVTZtnYLRqkIcAniVQqXUDLplRmZolfriMKVDDUGepcHGdrHuUPdUKAAhXiyqVOBGANfsVpPSNKGixoxtCCpDDdKkmTCdWARiufjKBYILfpaaGBgbDnwaJNlkpGPqPxlLDnQEzSxxJsUxPYeOpZAVJRevWBecPsXiiGZJXgaTHsIAjvyAPIfwesTmoUtLvCxfwSHmPbRdQVPWJQrAZLTCEwifojEhNZmNonShosjoiJuYdSRCzrwvvXopAxofMgBxVavjhEILptbrbHmGxEgbkKTAtSuQhTbewkMqioDtayfIDfKSKzoUNCUgszYuCXkCgISBJw$ $xXNuJQjQEfLsWDpErgSTSqkIEqrFZnteLXRZITXGeMRblCuiocWDIYBqGXAgsjSamNvVLWYsbHIIYozLxCWsxspFjXwtckujviHmdCESiQXPEqXhEAXqjXHaLrdiCAoozmjxcMhrOBROnbJsBmxlfQxudinsdEAuqpKGgxgIIOWDaYvKBeTmGJAnSqnRxeSRliuJQZkAZdEhQGSWunNUZBgDUjkgcKgUyeNNCulwzZbWlNSDJdIBQcYxhtjvTWEJQXHmRDspzzyWLjwJcJOyLOrjEKxPAdgQtjCiBkYhhzhtTpZdNNHYZNtzswOAEjtWZGjQAcfaQZWwXEXVPLfvViHFIlqgdJLdpGMPJGPJaBHOZVrPdKPAUKbVKsmTwxmogECkPKADKprOdjYByCqcEIqEHaWvZqqcCCWTaeZmnhBLdJzLKcEOgXsJGbXlxfxfVxUFPnFDFylWlRppdcsmHtNSFOpslzrFaUqZsbfwaBdRJaFYUpNmaIIamNpUYFaJRdBawfbsZqUaFrzlspOFSNtHmscdppRlWlyFDFnPFUxVfxfxlXbGJsXgOEcKLzJdLBhnmZeaTWCCcqqZvWaHEqIEcqCyBYjdOrpKDAKPkCEgomxwTmsKVbKUAPKdPrVZOHBaJPGJPMGpdLJdgqlIFHiVvfLPVXEXwWZQafcAQjGZWtjEAOwsztNZYHNNdZpTthzhhYkBiCjtQgdAPxKEjrOLyOJcJwjLWyzzpsDRmHXQJEWTvjthxYcQBIdJDSNlWbZzwluCNNeyUgKcgkjUDgBZUNnuWSGQhEdZAkZQJuilRSexRnqSnAJGmTeBKvYaDWOIIgxgGKpquAEdsniduxQflxmBsJbnORBOrhMcxjmzooACidrLaHXjqXAEhXqEPXQiSECdmHivjukctwXjFpsxsWCxLzoYIIHbsYWLVvNmaSjsgAXGqBYIDWcoiuClbRMeGXTIZRXLetnZFrqEIkqSTSgrEpDWsLfEQjQJuNXx$ $NxgQTrtTQrjOCFXPEegzXrdxcrTKBGiWsBYUJcrJyNkLoQMhAGvlhWSbLUxSnbViUQarMsyqHqvJyMiTFgHXCAVkSuxnaNnOSQsVDdwgDYPVOsfpLLfJrEbbnHqKkjQzVcvVuaWfvKgCPYjZqnnduxLBxgYXxjtHxJoPsNuxfwsqiKEOEieUVuPgwlBjLobACWTvqkpcyKnmTeFMEPhBNxTFWLIMizxtvTyhEJFVgAqTfpgWZYVEwFiFVYxCgULZyNjYoqJrOcKAhRHZFYzeEwUGvUwtaatrNQSeTWwYebiPXwxZHpjeedBjrCTGESJyxrjlTESYFwfDZfZHiIkdZaeeBeLEGZJPQyFaQbIkxMyqFtLyTJGQAgjerudhUxDFcSNlAxEHLSOZPnsPwySxGkiDaVgRhyoVTghNTdqNlTAytqSjyOneLTfSiSAJEQInlTtbezzvPnwWZSUmyZWhVpksiavaXDWuFtFPFzYBJblazTdomvWffWvmodTzalbJBYzFPFtFuWDXavaiskpVhWZymUSZWwnPvzzebtTlnIQEJASiSfTLenOyjSqtyATlNqdTNhgTVoyhRgVaDikGxSywPsnPZOSLHExAlNScFDxUhdurejgAQGJTyLtFqyMxkIbQaFyQPJZGELeBeeaZdkIiHZfZDfwFYSETljrxyJSEGTCrjBdeejpHZxwXPibeYwWTeSQNrtaatwUvGUwEezYFZHRhAKcOrJqoYjNyZLUgCxYVFiFwEVYZWgpfTqAgVFJEhyTvtxziMILWFTxNBhPEMFeTmnKycpkqvTWCAboLjBlwgPuVUeiEOEKiqswfxuNsPoJxHtjxXYgxBLxudnnqZjYPCgKvfWauVvcVzQjkKqHnbbErJfLLpfsOVPYDgwdDVsQSOnNanxuSkVACXHgFTiMyJvqHqysMraQUiVbnSxULbSWhlvGAhMQoLkNyJrcJUYBsWiGBKTrcxdrXzgeEPXFCOjrQTtrTQgxN$ $DOEMtyQBHOcjdaULLAwXrUKXWFXynjOCjVmjyPcnvUJYmLyNtioVyDqVRCWkWplMklhSxbYqqYNmXTXhFnhvryZfLthKEdgjRophDBNlErlTvazNTXEUxgsZvgPBmWcoxfmDzncycekiNSNSkvLftBNjnmuNCbOhAkdPdzblVmxHGkSYppcZyRIbqqMPRqcPujFIhHqXIVUSXMLIaxQRjKPEOYKmfxxOdZRbtudArXbwheAwfyBJSwEwgzRJMvZWQALeAMEvUzzfamOvGLAeYqDPyPQJkYtJQdjmQzoBxExQHMHwFzBUqSxUHRifXEyfOIAhpBzfKqvuYcGZeFHVKYIdvPQtxxdEuSFtusQebBkDCHZlAXYItKMrRVXAzwHUaQWJMWIIygdxMscAhsAmqlwsOKjdYgZMxNanvbcXODxaJNLXbPMjixOTshMXJNYmpidzUfOVkyzarDKzUIbvbbubjAZTqBcZuBqpqZoDKNdUqAqsjuydxiabaixdyujsqAqUdNKDoZqpqBuZcBqTZAjbubbvbIUzKDrazykVOfUzdipmYNJXMhsTOxijMPbXLNJaxDOXcbvnaNxMZgYdjKOswlqmAshAcsMxdgyIIWMJWQaUHwzAXVRrMKtIYXAlZHCDkBbeQsutFSuEdxxtQPvdIYKVHFeZGcYuvqKfzBphAIOfyEXfiRHUxSqUBzFwHMHQxExBozQmjdQJtYkJQPyPDqYeALGvOmafzzUvEMAeLAQWZvMJRzgwEwSJByfwAehwbXrAdutbRZdOxxfmKYOEPKjRQxaILMXSUVIXqHhIFjuPcqRPMqqbIRyZcppYSkGHxmVlbzdPdkAhObCNumnjNBtfLvkSNSNikecycnzDmfxocWmBPgvZsgxUEXTNzavTlrElNBDhpoRjgdEKhtLfZyrvhnFhXTXmNYqqYbxShlkMlpWkWCRVqDyVoitNyLmYJUvncPyjmVjCOjnyXFWXKUrXwALLUadjcOHBQytMEOD$
样例输出
16873252462 16973020528 16867528728 11446009 16918774433 14221149 16833299087 16946171048 602 310