gears_count = int(input())
connections_count = int(input())
connections = []
for i in range(connections_count):
inp = input()
connections = connections + [[int(inp.split()[0]), int(inp.split()[1])]]
def get_connections_of_gear(gear=1, connections_arr=[[0]]):
gear_connections = 0
if connections_arr:
for i in range(connections_count * 2):
if connections_arr[i // 2][i % 2] == gear:
gear_connections += 1
return gear_connections
def is_valid():
if gears_count < 3 or connections_count < 3:
return "good"
elif gears_count % 2 == 0:
gears = 0
for i in range(gears_count):
if get_connections_of_gear(i, connections) > 2:
gears += 1
if gears % 2 == 0:
return "good"
elif not gears_count % 2 == 0:
gears = 0
for i in range(gears_count):
if get_connections_of_gear(i, connections) > 2:
gears += 1
if not gears % 2 == 0:
return "good"
return "bad"
print(is_valid())
Объяснение:
8 из 11
Код готов, но дает 7. Однако при использовании совместно с кодом 2, то дает
Объяснение:
a = int(input())
b = int(input())
mas = ["test"]
mas01 = []
e = 0
ce = 2
answer = ""
test01 = "Correct"
test02 = ""
test03 = ""
externaltest03 = "NONE"
for i in range(b):
c, d = map(int, input().split())
for m in range(len(mas)):
if c == mas[m]:
e = e + 1
if e != 0:
e = 0
else:
mas.append(c)
for m in range(len(mas)):
if d == mas[m]:
e = e + 1
if e != 0:
e = 0
else:
mas.append(d)
mas01.append(c)
mas01.append(d)
del mas[0]
#First attemp
t = len(mas01) + 1
try:
for i in range(1,t,2):
if mas01[i] == mas01[i + 1]:
pass
else:
test01 = "Incorrect"
break
except:
pass
del i
del e
#Second attemp
if len(mas) == a:
test02 = "Correct"
else:
test02 = "Incorrect"
del a
del mas
#Third attemp
for i in range(0, t - 4, 2):
j = mas01[i]
k = mas01[i + 1]
m = mas01[ce]
n = mas01[ce + 1]
if j == m and k == n or j == n and k == m:
externaltest03 = "Error"
ce = ce + 2
del mas01
#4st attemp
if externaltest03 == "Error":
test03 = "Incorrect"
else:
test03 = "Correct"
del externaltest03
#5st Generate answer
if test01 == "Correct" and test02 == "Correct" and test03 == "Correct":
answer = "Yes"
else:
answer = "No"
print(answer)
a = int(input())
b = int(input())
mas = ["test"]
mas01 = []
e = 0
ce = 2
answer = ""
test01 = "Correct"
test02 = ""
test03 = ""
test04 = ""
externaltest03 = "NONE"
test04error = "NONE"
# Enable console testing?
# If yes, to write for value "START"
enableconsole = "STAR"
#Disable test01?
#If yes, write value "STOP"
disabletest01 = "STOP"
for i in range(b):
c, d = map(int, input().split())
for m in range(len(mas)):
if c == mas[m]:
e = e + 1
if e != 0:
e = 0
else:
mas.append(c)
for m in range(len(mas)):
if d == mas[m]:
e = e + 1
if e != 0:
e = 0
else:
mas.append(d)
mas01.append(c)
mas01.append(d)
del mas[0]
#First attemp
t = len(mas01) + 1
if disabletest01 != "STOP":
try:
for i in range(1,t,2):
if mas01[i] == mas01[i + 1]:
pass
else:
test01 = "Incorrect"
break
except:
pass
#del i
#del e
#Second attemp
if len(mas) == a:
test02 = "Correct"
else:
test02 = "Incorrect"
#del a
#del mas
#Third attemp
for i in range(0, t - 4, 2):
j = mas01[i]
k = mas01[i + 1]
m = mas01[ce]
n = mas01[ce + 1]
if j == m and k == n or j == n and k == m:
externaltest03 = "Error"
ce = ce + 2
#4st attemp
if externaltest03 == "Error":
test03 = "Incorrect"
else:
test03 = "Correct"
#del externaltest03
#5st Test04
for i in range(0, len(mas01), 2):
if mas01[i] == mas01[i + 1]:
test04error = "Error"
if test04error == "Error":
test04 = "Incorrect"
else:
test04 = "Correct"
#del mas01
#6st Generate answer
if test01 == "Correct" and test02 == "Correct" and test03 == "Correct" and test04 == "Correct":
answer = "Yes"
else:
answer = "No"
print(answer)
if enableconsole == "START":
print(mas)
print(mas01)
print(test01)
print(test02)
print(test03)
print(test04)
print(externaltest03)
var
a:array[1..20] of integer;
index, Min,count, i, n:integer;
begin
Readln(n);
Min:= 81;index:=-1;
For i:= 1 to n do
begin
a[i]:= random(96) - 15;
Write(a[i], ' ');
if Min = a[i] then
count:= count+1;
if Min > a[i] then begin
Min:=a[i];
index:=i;
count:=1;
end;
end;
Writeln;
Writeln('Min = ', Min);
Writeln('Минимумов: ', count, ' их сумма равна ', count*Min);
for i:= n downto 2 do
if (a[i] < 0) and (a[i-1] < 0) then
begin
Write('Номера соседних отрицательных эл-в -> ');
Writeln(i-1, ' ', i);
break;
end;
end.
Пример:
20
59 -3 44 -15 60 -3 70 -15 -10 1 -1 -2 21 23 -5 24 45 -10 0 48
Min = -15
Минимумов: 2 их сумма равна -30
Номера соседних отрицательных эл-в -> 11 12
2)
var
a,b:array[1..200] of integer;
i, n,cnt, j, Max:integer;
begin
Readln(n);
Read(a[1]);Max:=a[1];cnt:=1;
For i:= 2 to n do
begin
Read(a[i]);
if a[i] = max then
cnt:= cnt+1;
if a[i] > max then
begin
max:=a[i];
cnt:=1;
end;
end;
j:=1;
for i:=1 to n do
if a[i] < Max then
begin
b[j]:=a[i];
j:= j+1;
end;
for i:= j to n do
b[i]:=Max;
for i:=1 to n do
Write(b[i], ' ');
end.
Пример:
6
1 5 3 2 5 0
1 3 2 0 5 5
type Info = record
name:string;
unpl:integer;//unemployment
end;
var
a:array[1..40] of Info;
tmp:Info;
i, j:integer;
begin
For i:= 1 to 40 do
begin
Readln(a[i].name);
Readln(a[i].unpl);
end;
For i:= 1 to 40 do
for j:= i to 40 do
if a[i].unpl > a[j].unpl then
begin
tmp.name:= a[i].name;
tmp.unpl:= a[i].unpl;
a[i].name:=a[j].name;
a[i].unpl:=a[j].unpl;
a[j].name:=tmp.name;
a[j].unpl:=tmp.unpl;
end;
Writeln('три неблагополучных района:')
Writeln(a[40].name);
Writeln(a[39].name);
Writeln(a[38].name);
Writeln('три наиболее благополучных');
Writeln(a[1].name);
Writeln(a[2].name);
Writeln(a[3].name);
end.
Формат Ввода:
Название района
Безработица