Hi guys!
I’ve tested my code manually and for all cases I came up to it worked. But when I paste it to Judge i get WA. Used the Method of Differences.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CompleteTheSequence2
{
class Program
{
static string[] input;
static string output = “”;
static int GseqL, OseqL, Cctr, ctr=0;
static bool FSctr=false;
static int[,] D;
static void In()
{
input = Console.ReadLine().Split();
GseqL = Convert.ToInt32(input[0]);
OseqL = Convert.ToInt32(input[1]);
input = Console.ReadLine().Split();
D = new int[GseqL, GseqL + OseqL];
for (int i = 0; i < GseqL; i++) D[0,i] = Convert.ToInt32(input[i]);
}
static bool CheckValues(int j, int i)
{
Cctr = D[j, i];
i–;
for(;i>=0;i–)
{
if (D[j, i] != Cctr) return false;
}
return true;
}
static void FirstStep()
{
int j = 1, i = 0;
while (!FSctr)
{
while (i < GseqL - j)
{
D[j, i] = D[j - 1, i + 1] - D[j - 1, i];
i++;
}
FSctr = CheckValues(j, i-1);
j++;
i = 0;
}
ctr = j-1;
}
static void SecondStep()
{
for (int i = GseqL - ctr - 1; i < GseqL; i++) D[ctr, i] = D[ctr, 0];
}
static void ThirdStep(int x)
{
int i=GseqL-2;
while (i >= 0)
{
D[i, GseqL - i + x] = D[i, GseqL - i - 1 + x] + D[i + 1, GseqL - i - 1 + x];
i–;
}
}
static void FourthStep()
{
for (int i = GseqL; i < GseqL + OseqL; i++) output += Convert.ToString(D[0, i]) + " ";
}
static void ExepttionGL1()
{
for (int i = 0; i < OseqL; i++) D[0, i + GseqL] = D[0, 0];
}
static void Main(string[] args)
{
for (int t = Convert.ToInt32(Console.ReadLine()); t > 0; t–)
{
ctr = 0;
FSctr = false;
In();if (GseqL == 1) ExepttionGL1();
else
{
if (!CheckValues(0, GseqL - 1)) FirstStep();
SecondStep();
for (int i = 0; i < OseqL; i++) ThirdStep(i);
}
FourthStep();
output = output.Remove(output.Length - 1);
Console.WriteLine(output);
output = “”;
}
}
}
}
Can anyone help?
Also, how can I share Idone code?