Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
-10 / 0 / 0
Регистрация: 13.09.2019
Сообщений: 37

Определить количество перелетов туда и обратно между двумя городами

17.09.2019, 20:56. Показов 1423. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Не могу понять, как сделать это чудо:

A. Между офисами
ограничение по времени на тест2 секунды
ограничение по памяти на тест256 мегабайт
ввод стандартный ввод
вывод стандартный вывод
Вы возможно знаете, что у одной компании есть два офиса в Америке: один из них в Сан-Франциско, а другой в Сиэтле. Будучи менеджером в этой компании, вам приходится много перемещаться между этими двумя городами. Вы всегда летаете на самолете.

Вам больше нравится летать из Сиэтла в Сан-Франциско, чем в обратном направлении, так как в Сан-Франциско теплее. Вы настолько заняты, что не помните, сколько раз летали в каждом направлении. Однако. про каждый из последних n дней вы помните, были ли вы в офисе в Сан-Франциско, или в офисе в Сиэтле в тот день. Вы всегда летаете ночью, поэтому вы не могли быть в обоих офисах в один и тот же день. По данной информации определите, летали ли вы больше из Сиэтла в Сан-Франциско за последние n дней, или нет.

Входные данные
Первая строка содержит одно целое число n (2 ≤ n ≤ 100) — количество дней.

Вторая строка содержит строку длины n, состоящую только из заглавных букв «S» и «F» латинского алфавита. Если i-я буква — это «S», то вы были в офисе в Сиэтле в тот день, иначе вы были в Сан-Франциско. Дни даны в хронологическом порядке, то есть сегодня — последний день в этой последовательности.

Выходные данные
Выведите «YES», если вы летали больше раз из Сиэтла в Сан-Франциско, и «NO» иначе.

Вы можете вывести каждую из букв в любом регистре (заглавную или строчную).

Примеры
входные данныеСкопировать
4
FSSF
выходные данныеСкопировать
NO
входные данныеСкопировать
2
SF
выходные данныеСкопировать
YES
входные данныеСкопировать
10
FFFFFFFFFF
выходные данныеСкопировать
NO
входные данныеСкопировать
10
SSFFSFFSFF
выходные данныеСкопировать
YES
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.09.2019, 20:56
Ответы с готовыми решениями:

Найти минимальное количество пересадок между двумя городами
Здраствуйте!Помогите пожалуйста Кратчайший путь. Даны N городов и связи между ними в виде матрицы смежности. Требуется найти...

Расстояние между двумя ближайшими городами
Помогите пжалста. В некотором государстве n городов. Найти расстояние между двумя ближайшими городами от города A. Входные данные В...

Расстояние между двумя ближайшими городами
Помогите пжалста. Как бы тупо это не звучало, пжалста сделайте эту задачу для меня:wall: В некотором государстве n городов. Найти...

2
Модератор
 Аватар для long399
2882 / 1836 / 933
Регистрация: 16.10.2013
Сообщений: 5,240
Записей в блоге: 15
18.09.2019, 13:29
Данная задачка сводится к подсчету количеств вхождения каждой из подстрок ("SF" и "FS") в строку перелетов (второй входной параметр задачи). Если число вхождений "SF" больше чем число вхождений "FS" - выводим YES.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <iostream> 
#include <string> 
 
using namespace std; 
 
// кол-во вхождений подстроки в строку 
int count(string str, string substr) {
    int n = 0, p = 0;
    
    while ( (p = str.find(substr, p)) != str.npos ) { 
        ++n; 
        ++p; 
    } 
   
    return n;
}
 
int main() { 
   string perelet = "SSFFSFFSFF"; 
   string StoF = "SF"; // перелет из Сиэтла в Сан-Франциско
   string FtoS = "FS"; // перелет из Сан-Франциско в Сиэтл 
   
   int nSF = count(perelet, StoF); // количество SF
   int nFS = count(perelet, FtoS); // количество FS
   
   if(nSF > nFS)
        cout << "YES";
   else 
        cout <<"NO";
   
   return 0; 
}
P.S. ввод с консоли n (числа дней) и самой строки перелетов не делал. Думаю сами осилите.
0
-10 / 0 / 0
Регистрация: 13.09.2019
Сообщений: 37
18.09.2019, 15:24  [ТС]
long399, спасибо, просто от души)))))

Добавлено через 19 минут
long399, можешь фулл скинуть, не могу догнать, как оно делается, ?

Добавлено через 9 минут
long399, уже сделал, не нужно, спасибо)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.09.2019, 15:24
Помогаю со студенческими работами здесь

Определить количество дней между двумя датами
Всем привет. Знаю была уже подобная задачка решена ранее, и не раз: Пользователь вводит две даты (день, месяц, год в виде целых чисел)....

Количество построенных между городами дорог
Древняя рукопись В некоторой древней стране жили-были братья. Сколько их было, нам точно не известно, но в исторических источниках...

Нужно определить количество путей между двумя вершинами
Разработать алгоритм определения общего количества путей между двумя заданными вершинами в графе.Буду очень благодарен

Определить количество високосных годов между двумя введёнными
В общем, нужно написать программу (C++), которая будет определять кол-во високосных годов между двумя введёнными. Какие есть варианты...

Определить и вывести количество дней между двумя датами (логические операторы и операторы ветвлений)
Задачка Пользователь вводит две даты (день, месяц, год в виде целых чисел). Необходимо определить и вывести количество дней между этими...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru