Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,55 @@
|
|||
V costs = [‘W’ = [‘A’ = 16, ‘B’ = 16, ‘C’ = 13, ‘D’ = 22, ‘E’ = 17],
|
||||
‘X’ = [‘A’ = 14, ‘B’ = 14, ‘C’ = 13, ‘D’ = 19, ‘E’ = 15],
|
||||
‘Y’ = [‘A’ = 19, ‘B’ = 19, ‘C’ = 20, ‘D’ = 23, ‘E’ = 50],
|
||||
‘Z’ = [‘A’ = 50, ‘B’ = 12, ‘C’ = 50, ‘D’ = 15, ‘E’ = 11]]
|
||||
V demand = [‘A’ = 30, ‘B’ = 20, ‘C’ = 70, ‘D’ = 30, ‘E’ = 60]
|
||||
V cols = sorted(demand.keys())
|
||||
V supply = [‘W’ = 50, ‘X’ = 60, ‘Y’ = 50, ‘Z’ = 50]
|
||||
V res = Dict(costs.keys().map(k -> (k, DefaultDict[Char, Int]())))
|
||||
[Char = [Char]] g
|
||||
L(x) supply.keys()
|
||||
g[x] = sorted(costs[x].keys(), key' g -> :costs[@x][g])
|
||||
L(x) demand.keys()
|
||||
g[x] = sorted(costs.keys(), key' g -> :costs[g][@x])
|
||||
|
||||
L !g.empty
|
||||
[Char = Int] d
|
||||
L(x) demand.keys()
|
||||
d[x] = I g[x].len > 1 {(costs[g[x][1]][x] - costs[g[x][0]][x])} E costs[g[x][0]][x]
|
||||
[Char = Int] s
|
||||
L(x) supply.keys()
|
||||
s[x] = I g[x].len > 1 {(costs[x][g[x][1]] - costs[x][g[x][0]])} E costs[x][g[x][0]]
|
||||
V f = max(d.keys(), key' n -> @d[n])
|
||||
V t = max(s.keys(), key' n -> @s[n])
|
||||
(t, f) = I d[f] > s[t] {(f, g[f][0])} E (g[t][0], t)
|
||||
V v = min(supply[f], demand[t])
|
||||
res[f][t] += v
|
||||
demand[t] -= v
|
||||
I demand[t] == 0
|
||||
L(k, n) supply
|
||||
I n != 0
|
||||
g[k].remove(t)
|
||||
g.pop(t)
|
||||
demand.pop(t)
|
||||
supply[f] -= v
|
||||
I supply[f] == 0
|
||||
L(k, n) demand
|
||||
I n != 0
|
||||
g[k].remove(f)
|
||||
g.pop(f)
|
||||
supply.pop(f)
|
||||
|
||||
L(n) cols
|
||||
print("\t "n, end' ‘ ’)
|
||||
print()
|
||||
V cost = 0
|
||||
L(g) sorted(costs.keys())
|
||||
print(g" \t", end' ‘ ’)
|
||||
L(n) cols
|
||||
V y = res[g][n]
|
||||
I y != 0
|
||||
print(y, end' ‘ ’)
|
||||
cost += y * costs[g][n]
|
||||
print("\t", end' ‘ ’)
|
||||
print()
|
||||
print("\n\nTotal Cost = "cost)
|
||||
Loading…
Add table
Add a link
Reference in a new issue