ivandrofly

Ghost Legs - coding games

Mar 8th, 2021 (edited)
532
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Linq;
  3. using System.IO;
  4. using System.Text;
  5. using System.Collections;
  6. using System.Collections.Generic;
  7.  
  8. /**
  9.  * Auto-generated code below aims at helping you parse
  10.  * the standard input according to the problem statement.
  11.  **/
  12. class Solution
  13. {
  14.     static void Main(string[] args)
  15.     {
  16.         string[] inputs = Console.ReadLine().Split(' ');
  17.         int W = int.Parse(inputs[0]);
  18.         int H = int.Parse(inputs[1]);
  19.  
  20.         string[] header = null;
  21.         string[] footer = null;
  22.         string[] result = null;
  23.         // column
  24.         int k = 0; // resting column
  25.         int headerIndex = 0; // starting column
  26.  
  27.         var lines = new string[H];
  28.  
  29.         // read all lines
  30.         for (int i = 0; i < H; i++)
  31.         {
  32.             lines[i] = Console.ReadLine();
  33.             Console.Error.WriteLine(lines[i]);
  34.         }
  35.  
  36.         int letterColumns = lines[0].Split(' ', StringSplitOptions.RemoveEmptyEntries).Length;
  37.  
  38.         // for each column
  39.         for (int j = 0; j < letterColumns; j++)
  40.         {
  41.             headerIndex = j; // starting column, this will be used later to retrive the header e.g: A, B, C
  42.             k = j; // will be used alter to retrive the resting position. e.g: 1,2,3
  43.  
  44.             // headerIndex = 1;
  45.             // k = 1;
  46.             for (int i = 0; i < H; i++)
  47.             {
  48.                 string line = lines[i];
  49.  
  50.                 // read header
  51.                 if (i == 0)
  52.                 {
  53.                     header ??= line.Split(' ', StringSplitOptions.RemoveEmptyEntries);
  54.                 }
  55.                 // reader footer
  56.                 else if (i + 1 == H)
  57.                 {
  58.                     // read footer
  59.                     footer = line.Split(' ', StringSplitOptions.RemoveEmptyEntries);
  60.                     result ??= new String[header.Length];
  61.                     result[headerIndex] = header[headerIndex] + footer[k];
  62.                 }
  63.                 // read body
  64.                 else
  65.                 {
  66.                     // var parts = line.Split('|', StringSplitOptions.RemoveEmptyEntries);
  67.                     var parts = line.Split('|')
  68.  
  69. /*
  70.                     if (k == 0 && parts[0] == "--")
  71.                     {
  72.                         k++;
  73.                     }*/
  74.                     if (k - 1 >= 0 && parts[k] == "--")
  75.                     {
  76.                         k--;
  77.                     }
  78.                     else if (k + 1 < letterColumns && parts[k + 1] == "--")
  79.                     {
  80.                         k++;
  81.                     }
  82.                     else if (k + 1 == letterColumns && parts[k] == "--")
  83.                     {
  84.                         k--;
  85.                     }
  86.                 }
  87.             }
  88.         }
  89.  
  90.  
  91.         // Write an answer using Console.WriteLine()
  92.         // To debug: Console.Error.WriteLine("Debug messages...");
  93.         Console.WriteLine(string.Join(Environment.NewLine, result).Trim());
  94.     }
  95. }
  96.  
  97. // game: https://www.codingame.com/ide/puzzle/ghost-legs
RAW Paste Data

Adblocker detected! Please consider disabling it...

We've detected AdBlock Plus or some other adblocking software preventing Pastebin.com from fully loading.

We don't have any obnoxious sound, or popup ads, we actively block these annoying types of ads!

Please add Pastebin.com to your ad blocker whitelist or disable your adblocking software.

×