Помогите переписать код с C++ на C# [закрыт]

99
23 сентября 2019, 04:50

Шарпы ругаются на на эту строку

{cin>>buf; if(buf=='1') a[i][j]=1; else a[i][j]=0;}. 

я перерисовал как

buf = char.Parse(Console.ReadLine()); 

и так далее. выдает ошибку что нельзя ввести больше одного символа

#include <iostream>
#include <string>
using namespace std;
int a[1000][1000],n;
bool prov(int x,int y,int k)
{
for(int i=x;i<=x+k;i++)
for(int j=y;j<=y+k;j++)
if(a[i][j]==0) return false;
return true;    
}
int main()
{
char buf;
cin>>n;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
{cin>>buf; if(buf=='1') a[i][j]=1; else a[i][j]=0;}
for(int k=n-1;k>=0;k--)
for(int i=0;i<n-k;i++)
for(int j=0;j<n-k;j++)
if(prov(i,j,k)) {cout<<(k+1)*(k+1);return 0;}
    return 0;
}
Answer 1

Определите buf как string. А далее buf = Console.ReadLine(); Сравнивайте тоже по строке, в C# это двойная кавычка: if (buf == "1") a[i,j] = 1; В любом случае, код будет примерно таким:

class Program
    {
        static int[,] a = new int[1000,1000];
        static bool Prov(int x, int y, int k)
        {
            for (int i = x; i <= x + k; i++)
                for (int j = y; j <= y + k; j++)
                    if (a[i,j] == 0) return false;
            return true;
        }
        static void Main(string[] args)
        {
            string buf;
            int n = int.Parse(Console.ReadLine());
            for (int i = 0; i < n; i++)
                for (int j = 0; j < n; j++)
                {
                    buf = Console.ReadLine();
                    if (buf == "1") a[i,j] = 1;
                    else a[i,j] = 0;
                }
            for (int k = n - 1; k >= 0; k--)
                for (int i = 0; i < n - k; i++)
                    for (int j = 0; j < n - k; j++)
                        if (Prov(i, j, k))
                            Console.WriteLine((k + 1) * (k + 1));
        }
    }
READ ALSO
Создание графика WPF C# с Live Chart

Создание графика WPF C# с Live Chart

Использую Live ChartSeriesCollection передает LineSeries в котором Values = ChartValues

78
Unity: выпадающий список переменных в Inspector

Unity: выпадающий список переменных в Inspector

Делаю для игры перевод на разные языкиВ первом скрипте есть публичный класс с публичными переменными

147
Как сделать различные спрайты в массиве UI объектов [закрыт]

Как сделать различные спрайты в массиве UI объектов [закрыт]

Как назначить определенному элементу массива UI объекта (контент в scrollview) соответствующий спрайт из массива спрайта?

81
Как поместить модель в сессию в asp.net?

Как поместить модель в сессию в asp.net?

Модель NewModel приходит на контроллер, нужно ее поместить в сессию:

83