Template:ClassMatrix
{{#lua:
local input = stdin:match(".+"); local xaxis, yaxis, all = string.match(input, "([^&]+)&&([^&]+)&&(.+)"); local M = {}; for id in string.gmatch(all,"(%S+)") do x = string.sub(id, {{{2}}}, {{{3}}}); y = string.sub(id, {{{4}}}, {{{5}}}); if (M[x] == nil) then M[x] = {}; end if (M[x][y] == nil) then M[x][y] = 1; else M[x][y] = M[x][y] + 1; end end strFst = string.sub("{{{1}}}", 1, {{{2}}}-1); strSnd = string.sub("{{{1}}}", {{{3}}}+1, {{{4}}}-1); strTrd = string.sub("{{{1}}}", {{{5}}}+1, string.len("{{{1}}}")); for x,v in string.gmatch(xaxis, "(%S+) (%S+)") do str = x .. " (" .. v .. ")&&"; for y,v in string.gmatch(yaxis, "(%S+) (%S+)") do if (M[x][y] == nil) then str = str .. " 0 dummy"; else str = str .. " " .. M[x][y] .. " " .. strFst .. x .. strSnd .. y .. strTrd; end end print(str); end
|{{#lua:
local H = {}; local T = {}; for id in stdin:gmatch("%S+") do str = string.sub(id,{{{2}}},{{{3}}}); if (H[str] == nil) then H[str] = 1; table.insert(T, str); else H[str] = H[str] + 1; end end table.sort(T); for i=1,table.getn(T) do local k = T[i]; print(k .. " " .. H[k]); end
| }}&&{{#lua:
local H = {}; local T = {}; for id in stdin:gmatch("%S+") do str = string.sub(id,{{{4}}},{{{5}}}); if (H[str] == nil) then H[str] = 1; table.insert(T, str); else H[str] = H[str] + 1; end end table.sort(T); for i=1,table.getn(T) do local k = T[i]; print(k .. " " .. H[k]); end
| }}&& }}
{{#lua:}}! ({{{1}}} () | {{{1}}} () | for (id in stdin:gmatch("%S+") do) | {{{1}}} () | {{{1}}} () | {{{1}}} () | {{{1}}} () | end () | end () | table.sort(T); () | {{{1}}} () | {{{1}}} () | print(k (.. " " .. H[k]);) | end () | () | ()) | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
{{#lua:}}|- | {{{1}}} | |||||||||||||||
{{{1}}} | ||||||||||||||||
{{{1}}} | ||||||||||||||||
for id in string.gmatch(all,"(%S+)") do | ||||||||||||||||
{{{1}}} | ||||||||||||||||
{{{1}}} | ||||||||||||||||
{{{1}}} | ||||||||||||||||
{{{1}}} | ||||||||||||||||
{{{1}}} | ||||||||||||||||
{{{1}}} | ||||||||||||||||
end | ||||||||||||||||
end | ||||||||||||||||
{{{1}}} | ||||||||||||||||
{{{1}}} | ||||||||||||||||
{{{1}}} | ||||||||||||||||
for x,v in string.gmatch(xaxis, "(%S+) (%S+)") do | ||||||||||||||||
{{{1}}} | ||||||||||||||||
for y,v in string.gmatch(yaxis, "(%S+) (%S+)") do | ||||||||||||||||
{{{1}}} | ||||||||||||||||
{{{1}}} | ||||||||||||||||
{{{1}}} | ||||||||||||||||
end | ||||||||||||||||
end | ||||||||||||||||
print(str); | ||||||||||||||||
end | ||||||||||||||||
' | ||||||||||||||||
'''' |