Water collected between towers: Difference between revisions

Content added Content deleted
(Added J solution)
(→‎{{header|J}}: better approach inspired by Julia)
Line 791: Line 791:
0</pre>
0</pre>
=={{header|J}}==
=={{header|J}}==
Inspired by [[#Julia]].

'''tacit version'''
'''tacit version'''
<lang J> NB. collect levels after filling
<lang J> c =: [: +/@, (1,(=>./)) (-~>./\)`(-~>./\.);.1 (0 ,])
collect =: >./\ <. >./\.
NB. sum the difference with the towers
count =: [: +/ collect - ]
NB. print a nice graph of towers and water
print =: [: |.@|: '#~' #~ ] ,. collect - ]
NB. test cases
NB. test cases
t =: <@"._2 (0 : 0)
t =: <@"._2 (0 : 0)
Line 804: Line 811:
)
)
r =: 2 14 35 0 0 0 0
r =: 2 14 35 0 0 0 0
r -: c &> t
r -: count &> t
1
1
print 1 {:: t
#
#
#~~~~#
#~#~~#
#~#~#~##
#~#~####
###~####
########~#
##########
</lang>
</lang>

=={{header|Java}}==
=={{header|Java}}==
{{trans|D}}
{{trans|D}}