Корпорация RoboCorp2021 занимается производством изделий с использованием роботов. Каждый из роботов имеет ряд возможностей по обработке деталей, и каждый из роботов может передать обработанную им деталь некоторым другим роботам. Роботы пронумерованы от 1 до N. Руководство RoboCorp2021 решило оптимизировать производство и улучшить роботов. Заметив, что самой долгой и затратной оказалась операция передачи деталей от одного работа другому роботу, руководство решило, чтобы одна и та же деталь по возможности не обрабатывалась разными роботами. Однако оказалось, что совместить все возможные обработки в одном роботе не всегда возможно и окупаемо. Было подсчитано, что заменять двух роботов на одного нужно только тогда, когда переданная деталь от первого робота второму может быть возвращена обратно первому роботу. При этом передача детали может быть сделана как сразу от первого второму, так и через несколько других роботов. Аналогично рассматривается и передача в обратную сторону.
Зная количество роботов на устаревшем производстве, и кому они могли передавать детали, посчитайте, сколько будет использоваться роботов в новом производстве. Учтите, что если первый робот может передать деталь второму роботу, но эта деталь уже не может вернуться к первому, то нужны будут оба робота.
Описание устаревшего производства имеет следующий вид. На первой строке находится целое число N – количество роботов.
На следующих N строках: первое целое число K – это количество тех роботов, которым может быть передана деталь от i-го робота, где i – номер строки и номер соответствующего робота, далее K целых чисел Mj – номера этих роботов. 1 ≤ Mj ≤ N.
Например, для входных данных
7 3 2 3 4 1 1 1 2 0 0 1 7 1 6
количество роботов, которое будет использоваться в новом производстве будет равно 4.
В поле для ввода ответа запишите одно целое число – количество роботов, которое будет использоваться в новом производстве, для входных данных
//задача 1program _sqrt;var ar:array[1..100] of integer;i:integer;Res:real;beginfor i:=1 to 100 do ar[i]:=i;for i:=1 to 100 do if ar[i] mod 2=0 then res:=res+ar[i];res:=sqrt(res);write(res);end. //задача 2. 100 элементов слишком много для произведенияprogram _sqrt;var ar:array[1..10] of integer;i:integer;res:int64;beginres:=1;for i:=1 to 10 dobeginar[i]:=i;res:=res*sqr(ar[i]);end;write(res);end. //задача 3program _sqrt;var ar:array[1..100] of integer;i:integer;res:int64;beginfor i:=1 to 100 dobeginar[i]:=i;if ar[i] mod 2=1 then res:=res+ar[i];end;write(res);end.
Безопасное пользование Интернетом. Дети в Интернете: кто предупреждён, тот вооружен. ... Человек, с которым происходит общение, в значительной степени определяет, насколькобезопасной и приятной для васявляется атмосфера в чате. Как правило, степень безопасности чата, в котором общается ваш ребенок, можно определить по трем основным вопросам. 1. Предназначен ли чат для детей?
Безопасный интернет детям. Согласно Российскому законодательству информационная безопасность детей – это состояние защищенности детей, при котором отсутствует риск, связанный с причинением информацией, в том числе распространяемой в сети Интернет, вреда их здоровью, физическому, психическому, духовному и нравственному развитию (Федеральный закон от 29.12.2010 № 436-ФЗ "О защите детей от информации, причиняющей вред их здоровью и развитию"). ... Для детей и молодежи Интернет главным образом является социальной средой, в которой можно не только встречаться с друзьями, но и с незнакомцами. ВИнтернете пользователя могут обидеть, запугать или даже оскорбить. Лучшей защитой является руководство собственным здравым смыслом.
//задача 2. 100 элементов слишком много для произведенияprogram _sqrt;var ar:array[1..10] of integer;i:integer;res:int64;beginres:=1;for i:=1 to 10 dobeginar[i]:=i;res:=res*sqr(ar[i]);end;write(res);end.
//задача 3program _sqrt;var ar:array[1..100] of integer;i:integer;res:int64;beginfor i:=1 to 100 dobeginar[i]:=i;if ar[i] mod 2=1 then res:=res+ar[i];end;write(res);end.