• <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

            国产69精品久久久久9999APGF| 国内精品久久久久影院亚洲| 99热成人精品热久久669| 精品久久久久久亚洲| 欧美成a人片免费看久久| 久久精品国产亚洲AV高清热| 热re99久久精品国产99热| 欧美日韩精品久久免费| 99久久精品国产一区二区三区 | 国内精品久久久久久久久电影网 | 99精品国产综合久久久久五月天| 久久久久亚洲精品天堂| 无码国内精品久久人妻麻豆按摩| 久久久久亚洲精品天堂| 精品伊人久久久| 久久婷婷五月综合色99啪ak| 日产精品久久久久久久性色| 性高湖久久久久久久久AAAAA| 免费观看成人久久网免费观看| 久久久精品人妻一区二区三区蜜桃 | 中文字幕乱码人妻无码久久| 91久久精品国产免费直播| 久久人妻少妇嫩草AV无码专区 | 国产精品九九久久免费视频 | 久久天天躁狠狠躁夜夜av浪潮| 91精品国产综合久久精品| 麻豆亚洲AV永久无码精品久久| 久久夜色精品国产噜噜亚洲a| 日产久久强奸免费的看| 久久免费大片| 亚洲一级Av无码毛片久久精品| 久久久精品日本一区二区三区| 亚洲嫩草影院久久精品| 99久久超碰中文字幕伊人| 精品久久久久久亚洲| 精品久久久久久国产| 久久综合久久久| 久久一区二区三区免费| 欧美亚洲国产精品久久久久| 蜜桃麻豆WWW久久囤产精品| 亚洲午夜久久久久久久久电影网|