[伯俊/BOJ]14457Cow Tipping[Bronze 1](失敗)


  • Cow Tipping
  • 質問元:https://www.acmicpc.net/problem/14457
    最近スケジュールが忙しくてBaek Junが解けませんでした
    三日間悩んだようです.
    しかしまだ解けていないので多くの資料と解答を探しましたが、C言語の解がありません.
    コード自体はよく転がっていると思いますが、入力中はNを文字列で受信する必要があります.
    文字列を受信して2 D配列にアクセスしようとしても...(後でやってみるといいかな…?)
    整数を受け取って実行すると、正常に動作します.
    後で時間があれば、もう一度やってみたいです.
    この垂れ下がりをずっとつかんでいてもストレスが・・・
    ただ、いくつかの反例や解答のようなものがあることを望んでいます.
    code
    int cnt = 0;
    void flip(int grid[10][10], int N, int i, int j)
    {
    	for (int a = i; a >= 0; a--)
    	{
    		for (int b = j; b >= 0; b--)
    		{
    			if (grid[a][b] == 1)
    			{
    				grid[a][b] = 0;
    			}
    			else
    			{
    				grid[a][b] = 1;
    			}
    		}
    	}
    	cnt++;
    }
    int main()
    {
    	int N, i, j, x, y;
    	int arr[10][10] = { 0 };
    	scanf("%d", &N);
    	for (i = 0; i < N; i++)
    		for (j = 0; j < N; j++)
    			scanf("%d", &arr[i][j]);
    	for (i = N - 1; i >= 0; i--)
    	{
    		for (j = N - 1; j >= 0; j--)
    		{
    			if (arr[i][j] == 1)
    				flip(arr, N, i, j);
    		}
    	}
    	printf("%d", cnt);
    	return 0;
    }