zoukankan      html  css  js  c++  java
  • Poj2965,翻转行与列

    -+--
    ----
    ----
    -+--

    翻一个位置必须翻转所在行与列的其它所有棋子

    要翻转一个位置而不改变其它位置的方法:该位置所在的行与列的总共7个翻面,知道此方法后这题就可以不用做了

    网上代码特别多:

    #include <iostream>
     using namespace std;
     
     const int ROW = 4;
     
     int main()
     {
    	 //freopen("d:/t.txt","r",stdin);
         bool HANDLES[ROW][ROW] = {false};
         char handle;
    	 int i;
        for( i = 0; i < ROW; ++i)
        {
           for(int j = 0; j < ROW; ++j)
           {
                cin >> handle;
                if(handle == '+')
                {
                    HANDLES[i][j] = !HANDLES[i][j];
                    for(int k = 0; k < ROW; ++k)
                    {
                        HANDLES[i][k] = !HANDLES[i][k];
                        HANDLES[k][j] = !HANDLES[k][j];
                    }
                }
            }
        }
        int result = 0;
        for( i = 0; i < ROW; ++i)
        {
            for(int j = 0; j < ROW; ++j)
            {
                if(HANDLES[i][j])
                {
                    ++result;
                }
            }
        }
        cout << result << endl;
        for( i = 0; i < ROW; ++i)
        {
            for(int j = 0; j < ROW; ++j)
            {
                if(HANDLES[i][j])
                {
                    cout << i + 1 << " " << j + 1 << endl;
                }
            }
        }
        return 0;
    }
  • 相关阅读:
    第一周软件测试
    第八周
    第七
    安卓第六周作业
    安卓第五周
    第四周作业
    Jsp第十次作业
    Jsp第九次作业(带验证码的email)
    Jsp第八次作业
    Jsp第七次作业email
  • 原文地址:https://www.cnblogs.com/yangyh/p/2073281.html
Copyright © 2011-2022 走看看