より小演算子()を使用する数学的な不等式の空でないリストを取り込むプログラムまたは関数を作成し<ます。リストの各行は次の形式になります
[variable] < [variable]
ここで、a [variable]は小文字のaz文字の空でない文字列です。通常の数学およびプログラミングと同様に、同じ名前の変数は同一です。
すべての不等式が満たされるように各変数に正の整数を割り当てることができる場合、そのような割り当てを持つ変数のリストを出力または返します。このリストの各行の形式は次のとおりです。
[variable] = [positive integer]
すべての変数は、任意の順序で1回だけ出現する必要があります。
不等式のセットには多くの正の整数解が存在する可能性があることに注意してください。それらのいずれかが有効な出力です。
不等式の解決策がない場合は、何も出力しないか、偽の値を出力します(ユーザー次第)。
バイト単位の最短コードが優先されます。
例
入力が
mouse < cat
mouse < dog
これらはすべて有効な出力になります。
mouse = 1
cat = 2
dog = 2
mouse = 37
cat = 194
dog = 204
mouse = 2
cat = 2000000004
dog = 3
入力が
rickon < bran
bran < arya
arya < sansa
sansa < robb
robb < rickon
それは煮詰めるので、割り当ては不可能です rickon < rickonはに要約。そのため、出力がないか、偽の出力があります。
ソリューションのその他の例:
x < y
x = 90
y = 91
---
p < q
p < q
p = 1
q = 2
---
q < p
q < p
p = 2
q = 1
---
abcdefghijklmnopqrstuvwxyz < abcdefghijklmnopqrstuvwxyzz
abcdefghijklmnopqrstuvwxyz = 123456789
abcdefghijklmnopqrstuvwxyzz = 1234567890
---
pot < spot
pot < spot
pot < spots
pot = 5
spot = 7
spots = 6
---
d < a
d < b
d < c
d < e
d = 1
a = 4
b = 4
c = 5
e = 4
---
aa < aaaaa
a < aa
aaa < aaaa
aa < aaaa
a < aaa
aaaa < aaaaa
aaa < aaaaa
a < aaaaa
aaaa = 4
aa = 2
aaaaa = 5
a = 1
aaa = 3
---
frog < toad
frog < toaster
toad < llama
llama < hippo
raccoon < science
science < toast
toaster < toad
tuna < salmon
hippo < science
toasted < toast
raccoon = 1
frog = 2
toaster = 3
toasted = 4
toad = 5
llama = 6
hippo = 7
science = 8
toast = 9
tuna = 10
salmon = 11
解決策のない他の例:(空行で区切られている)
z < z
ps < ps
ps < ps
q < p
p < q
p < q
q < p
a < b
b < c
c < a
d < a
d < b
d < c
d < d
abcdefghijklmnopqrstuvwxyz < abcdefghijklmnopqrstuvwxyz
bolero < minuet
minuet < bolero
aa < aaaaa
a < aa
aaa < aaaa
aa < aaaa
aaaaa < aaaa
a < aaa
aaaa < aaaaa
aaa < aaaaa
a < aaaaa
g < c
a < g
b < a
c < a
g < b
a < g
b < a
c < a
g < b
a < g
b < a
c < b
g < c
a < g
b < a
c < b
geobits < geoborts
geobrits < geoborts
geology < geobits
geoborts < geology