Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,30 @@
|
|||
class Program
|
||||
{
|
||||
static void Main(string[] args)
|
||||
{
|
||||
int[][] wta = {
|
||||
new int[] {1, 5, 3, 7, 2}, new int[] { 5, 3, 7, 2, 6, 4, 5, 9, 1, 2 },
|
||||
new int[] { 2, 6, 3, 5, 2, 8, 1, 4, 2, 2, 5, 3, 5, 7, 4, 1 },
|
||||
new int[] { 5, 5, 5, 5 }, new int[] { 5, 6, 7, 8 },
|
||||
new int[] { 8, 7, 7, 6 }, new int[] { 6, 7, 10, 7, 6 }};
|
||||
string blk, lf = "\n", tb = "██", wr = "≈≈", mt = " ";
|
||||
for (int i = 0; i < wta.Length; i++)
|
||||
{
|
||||
int bpf; blk = ""; do
|
||||
{
|
||||
string floor = ""; bpf = 0; for (int j = 0; j < wta[i].Length; j++)
|
||||
{
|
||||
if (wta[i][j] > 0)
|
||||
{ floor += tb; wta[i][j] -= 1; bpf += 1; }
|
||||
else floor += (j > 0 && j < wta[i].Length - 1 ? wr : mt);
|
||||
}
|
||||
if (bpf > 0) blk = floor + lf + blk;
|
||||
} while (bpf > 0);
|
||||
while (blk.Contains(mt + wr)) blk = blk.Replace(mt + wr, mt + mt);
|
||||
while (blk.Contains(wr + mt)) blk = blk.Replace(wr + mt, mt + mt);
|
||||
if (args.Length > 0) System.Console.Write("\n{0}", blk);
|
||||
System.Console.WriteLine("Block {0} retains {1,2} water units.",
|
||||
i + 1, (blk.Length - blk.Replace(wr, "").Length) / 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
Block 1 retains 2 water units.
|
||||
Block 2 retains 14 water units.
|
||||
Block 3 retains 35 water units.
|
||||
Block 4 retains 0 water units.
|
||||
Block 5 retains 0 water units.
|
||||
Block 6 retains 0 water units.
|
||||
Block 7 retains 0 water units.
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
class Program
|
||||
{
|
||||
// Variable names key:
|
||||
// i Iterator (of the tower block array).
|
||||
// tba Tower block array.
|
||||
// tea Tower elevation array.
|
||||
// rht Right hand tower column number (position).
|
||||
// wu Water units (count).
|
||||
// bof Blocks on floor (count).
|
||||
// col Column number in elevation array (position).
|
||||
|
||||
static void Main(string[] args)
|
||||
{
|
||||
int i = 1; int[][] tba = {new int[] { 1, 5, 3, 7, 2 },
|
||||
new int[] { 5, 3, 7, 2, 6, 4, 5, 9, 1, 2 },
|
||||
new int[] { 2, 6, 3, 5, 2, 8, 1, 4, 2, 2, 5, 3, 5, 7, 4, 1 },
|
||||
new int[] { 5, 5, 5, 5 }, new int[] { 5, 6, 7, 8 },
|
||||
new int[] { 8, 7, 7, 6 }, new int[] { 6, 7, 10, 7, 6 }};
|
||||
foreach (int[] tea in tba)
|
||||
{
|
||||
int rht, wu = 0, bof; do
|
||||
{
|
||||
for (rht = tea.Length - 1; rht >= 0; rht--)
|
||||
if (tea[rht] > 0) break;
|
||||
if (rht < 0) break;
|
||||
bof = 0; for (int col = 0; col <= rht; col++)
|
||||
{
|
||||
if (tea[col] > 0) { tea[col] -= 1; bof += 1; }
|
||||
else if (bof > 0) wu++;
|
||||
}
|
||||
if (bof < 2) break;
|
||||
} while (true);
|
||||
System.Console.WriteLine(string.Format("Block {0} {1} water units.",
|
||||
i++, wu == 0 ? "does not hold any" : "holds " + wu.ToString()));
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue