Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Електронно съобщение
- // На електронно табло на плажа на Слънчев бряг се извежда информация за времето и температурата на въздуха и водата.
- // Съобщенията съдържат малки и главни английски букви, цифри и интервали. В края на информацията се записва точка.
- // Всеки ден Слончето Лони се осведомява за метеорологичните условия от таблото.
- // Един ден то установило, че таблото е повредено и в съобщението има и други знаци, различни от обичайните.
- // Както винаги, то е любознателно и иска да разбере колко е най-дългата последователност от повредени знаци на таблото.
- // Помогнете му като напишете програма elmessage, която въвежда съобщението, изписано на таблото, и извежда колко е максималният брой последователни повредени знаци.
- // Вход
- // На първия ред на стандартния вход се въвежда текст, който завършва с точка.
- // Изход
- // На един ред на стандартния изход програмата трябва да изведе едно число – дължината на най-дългата последователност от повредени знаци (различни от букви, цифри и интервали).
- // Ограничения
- // Точката винаги завършва съобщението и тя не се поврежда. В съобщението има точно една точка. Съобщението съдържа не повече от 1000 знака.
- // Примертни тестове
- // Вход
- // Tempera#### na @#$ata 23 grad#%&.
- // Изход
- // 4
- const input = ['Tempera#### na @#$ata 23 grad#%&.'];
- const print = this.print || console.log;
- const gets = this.gets || ((arr, index) => () => arr[index++])(input, 0);
- const initialMessageArray = gets().split(' '); // create an array of all the words in the sentence
- const arrOfSymbols = []; // create a blank array in which we will store each of the special symbols in every word from the sentence
- for (let i = 0; i < initialMessageArray.length; i++) {
- let lengthPerSymbol = 0; // create a variable which will store the length of each "special" string within a word in the sentence
- for (let j = 0; j < initialMessageArray[i].length; j++) { // we use the below comparison based on the ASCII table, w3resource.com
- if (((initialMessageArray[i].charCodeAt(j) >= 33) && (initialMessageArray[i].charCodeAt(j) <= 47) && (initialMessageArray[i].charCodeAt(j) !== 46)) || ((initialMessageArray[i].charCodeAt(j) >= 58) && (initialMessageArray[i].charCodeAt(j) <= 64)) || ((initialMessageArray[i].charCodeAt(j) >= 91) && (initialMessageArray[i].charCodeAt(j) <= 96)) || ((initialMessageArray[i].charCodeAt(j) >= 123) && (initialMessageArray[i].charCodeAt(j) <= 126))) {
- lengthPerSymbol++;
- }
- }
- arrOfSymbols.push(lengthPerSymbol);
- }
- let maxLength = arrOfSymbols[0]; // assign the maximum length of a string to the first word of the array
- for (let i = 0; i < arrOfSymbols.length; i++) {
- if (maxLength <= arrOfSymbols[i]) {
- maxLength = arrOfSymbols[i];
- }
- }
- print(maxLength);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement