D1manch1k
09.03.2021 15:01

Вася решил немного попутешествовать и подсчитал, сколько стоит переезд между каждой парой близлежащих городов. После этого он наметил маршрут – последовательность городов, которые он хотел посетить. Напишите программу, которая считает общие транспортные расходы на путешествие. Некоторые города не связаны дорогами, так что проехать напрямую из одного города в другой не всегда возможно.

Входные данные
В первой строке вводится количество городов N ( 1 ≤ N ≤ 1000 ). В следующих N строках записано по N чисел, разделённых пробелами – стоимость переезда между каждой парой городов. Ноль означает, что дороги между этими городами нет. В последней строке записаны номера городов, которые хотел посетить Вася. Их может быть от 1 до 1000, они могут повторяться. Нумерация городов начинается с единицы.

Выходные данные
Программа должна вывести одно число – общую стоимость путешествия по такому маршруту или число 0, если на каком-то этапе прямой переезд из одного города в другой невозможен.

входные данные
5
0 2 3 4 3
2 0 5 0 7
3 6 0 8 0
0 0 0 0 0
3 7 0 9 0
1 2 5 1
выходные данные
12

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
alenazakhar2000al
29.04.2020 17:38

//Поскольку вы не указали структуру файла и язык программирования, то подберу их сам.

//ЯП: C#

//Структура: рост/имя/вес/страна проживания

Код:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.IO;

namespace Prog

{

class Program

{

static void Main(string[] args)

{

string location = "C://Test//Persons.txt";

try

{

int size = File.ReadLines(location).Count();

if (size > 0)

{

List<string> person = new List<string>();

string[] tallestPerson = new string[4];

int maxHeight = -1;

int height = 0;

int index = 0;

StreamReader PersonsReader = new StreamReader(location, Encoding.Default);

for (int i = 0; i < size; i++)

{

person.Add(PersonsReader.ReadLine());

height = Convert.ToInt32(person[i].Remove(person[i].IndexOf("/")));

if (height > maxHeight)

{

maxHeight = height;

index = i;

}

}

string tmp = person[index];

int paramIndex = 0;

for (int j = 0; j < tmp.Length; j++)

{

if (tmp[j] != '/')

tallestPerson[paramIndex] += tmp[j];

else

paramIndex++;

}

Console.WriteLine("Самый высокий человек: " + tallestPerson[1]);

Console.WriteLine("Рост: " + tallestPerson[0] + " см");

Console.WriteLine("Вес: " + tallestPerson[2] + " кг");

Console.WriteLine("Страна проживания: " + tallestPerson[3]);

}

else

{

Console.WriteLine("Файл пустой!");

}

}

catch (Exception)

{

Console.WriteLine("Ошибка! Файл не нейден, либо нарушена его структура!");

}

finally

{

Console.ReadKey();

}

}

}

}


Написать программу, которая в файле находит самого высокого человека и выводит его данные.
Написать программу, которая в файле находит самого высокого человека и выводит его данные.
Написать программу, которая в файле находит самого высокого человека и выводит его данные.
Написать программу, которая в файле находит самого высокого человека и выводит его данные.
Написать программу, которая в файле находит самого высокого человека и выводит его данные.
0,0(0 оценок)
Ответ:
vikarudenko1998
22.05.2020 09:50

уточнять на каком языке программирования нужно написать задачки. Я же напишу на С++. Алгоритм везде будет один и тот же.

1 задача

int x1 = 0;

int x2 = 0;

int x3 = 0;

int x4 = 0;

int x5 = 0;

cin >> x1;

cin >> x2;

cin >> x3;

cin >> x4;

cin >> x5;

double sr = 0.0;

sr = (x1+x2+x3+x4+x5)/5;

Или же можно сделать по проще

int x = 0;

int sum = 0;

double sr = 0.0;

for(int i = 0; i<5; i++){

cin >> x;

sum = sum +x;

}

sr = sum/5;

2 Задача

int number = 5;

for(int i = 2; i<20; i=i+2){

number = number + i;

}

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота