• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            數據加載中……

            USACO 1.2.2 Transformations

            這個用的就是死模擬,變換形式實際上只有兩種: 1. 順時針旋轉90度  2.鏡面對稱
            另外發現 模板template很好用。
             1 /*
             2 ID: 31440461
             3 LANG: C++
             4 TASK: transform
             5 */
             6 #include<iostream>
             7 using namespace std;
             8 typedef char arr[11][11];
             9 arr pat1,pat2,bak;
            10 int n;
            11 
            12 template <class T>
            13 void init(T& a)
            14 {
            15   for (int i=0;i<n;i++)
            16     for (int j=0;j<n;j++)
            17       cin >> a[i][j];
            18 }
            19 
            20 template <class T>
            21 void eva(const T& a,T& b)
            22 {
            23   for (int i=0;i<n;i++)
            24     for (int j=0;j<n;j++)
            25       b[i][j] = a[i][j];
            26 }
            27 
            28 template <class T>
            29 bool cmp(const T& a,const T& b)
            30 {
            31   for (int i=0;i<n;i++)
            32     for (int j=0;j<n;j++)
            33       if (a[i][j] != b[i][j]) return 0;
            34   return 1;
            35 }
            36 
            37 void tranf1()
            38 {
            39   arr tmp;
            40   eva(pat1,tmp);
            41   for (int i=0;i<n;i++)
            42     for (int j=0;j<n;j++)
            43       pat1[j][n-1-i] = tmp[i][j];
            44 }
            45 
            46 void tranf4()
            47 {
            48   arr tmp;
            49   eva(pat1,tmp);
            50   for (int i=0;i<n;i++)
            51     for (int j=0;j<n;j++)
            52       pat1[i][n-1-j] = tmp[i][j];
            53 }
            54 
            55 int main() 
            56 {
            57   freopen ("transform.in","r",stdin);
            58   freopen ("transform.out","w",stdout);
            59   cin >> n;
            60   init(pat1);
            61   init(pat2);
            62   eva(pat1,bak); 
            63   tranf1();
            64   if (cmp(pat1,pat2)) { cout << 1 << endl; return 0;}
            65   tranf1();
            66   if (cmp(pat1,pat2)) { cout << 2 << endl; return 0;}
            67   tranf1();
            68   if (cmp(pat1,pat2)) { cout << 3 << endl; return 0;}
            69   tranf1();
            70   tranf4();
            71   if (cmp(pat1,pat2)) { cout << 4 << endl; return 0;} 
            72   for (int i=0;i<3;i++){
            73     tranf1();
            74     if (cmp(pat1,pat2)) { cout << 5 << endl; return 0;}
            75   }
            76   if (cmp(pat1,pat2)) { cout << 6 << endl; return 0;}
            77   cout << 7 << endl;
            78   return 0;
            79 }
            80 


            posted on 2009-07-12 13:33 Chen Jiecao 閱讀(214) 評論(0)  編輯 收藏 引用 所屬分類: USACO

            亚洲国产精品久久久久| 国产亚州精品女人久久久久久| 亚洲国产精品成人久久| 国産精品久久久久久久| 国产精品亚洲美女久久久| 久久综合九色欧美综合狠狠 | 国产成人精品久久亚洲| 久久国产欧美日韩精品| 97久久综合精品久久久综合| 亚洲午夜久久久精品影院| av无码久久久久久不卡网站| 久久ZYZ资源站无码中文动漫| 久久久久99精品成人片欧美| 狠狠色狠狠色综合久久| 亚洲精品无码久久不卡| 亚洲午夜久久久久久久久电影网 | 无码国内精品久久综合88 | 国产精品99久久久久久宅男小说| 久久精品嫩草影院| 日韩久久无码免费毛片软件| 美女久久久久久| 国产高潮国产高潮久久久| 久久99亚洲网美利坚合众国| 色播久久人人爽人人爽人人片AV| 精品久久久久久无码专区| 国内精品久久久久久久coent| 久久久久国产一级毛片高清版| 国产婷婷成人久久Av免费高清| 精品久久久久中文字幕日本| 欧美日韩精品久久久免费观看| 色婷婷狠狠久久综合五月| 99精品国产在热久久| 国产亚洲精午夜久久久久久 | 久久久免费精品re6| 99久久国产免费福利| 久久精品免费一区二区| 成人a毛片久久免费播放| 亚洲午夜久久久影院| 久久强奷乱码老熟女网站| 久久久久99精品成人片直播| 少妇久久久久久被弄到高潮|