久久中文视频-久久中文网-久久中文亚洲国产-久久中文字幕久久久久-亚洲狠狠成人综合网-亚洲狠狠婷婷综合久久久久


曙海教育集團論壇開發語言培訓專區JAVA語言開發 → 有高手能把JAVA語言的Triomino問題改寫成C語言嗎?


  共有6952人關注過本帖樹形打印

主題:有高手能把JAVA語言的Triomino問題改寫成C語言嗎?

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


加好友 發短信
等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
有高手能把JAVA語言的Triomino問題改寫成C語言嗎?  發帖心情 Post By:2010-12-11 9:27:09

這是網上搜的java程序-   -!
  Triomino問題,即用一個L形的瓦片(有三個小正方形組成)覆蓋一個缺少了一個方塊(可以是棋盤上的   任何位置)的2^n   X   2^n棋盤  
Triomino問題的動態演示程序。
源代碼:
用分治法解triomino問題
  public   void   trio(int   x,   int   y,   int   cStart,   int   cEnd,   int   rStart,   int   rEnd)
  {
    if(cEnd   -   cStart   >   1)
    {
      if(x> =cStart   &&   x <=(cEnd+cStart)/2   &&   y> =rStart   &&   y <=(rEnd+rStart)/2)
      {
        trio(x,   y,   cStart,   (cEnd+cStart)/2,   rStart,     (rEnd+rStart)/2);
        trio((cEnd+cStart)/2+1,   (rEnd+rStart)/2,   (cEnd+cStart)/2+1,   cEnd,  
          rStart,     (rEnd+rStart)/2);
        trio((cEnd+cStart)/2+1,   (rEnd+rStart)/2+1,   (cEnd+cStart)/2+1,   cEnd,  
          (rEnd+rStart)/2+1,     rEnd);
        trio((cEnd+cStart)/2,   (rEnd+rStart)/2+1,   cStart,   (cEnd+cStart)/2,  
          (rEnd+rStart)/2+1,     rEnd);
        /*fillRect((cEnd+cStart)/2+1,   (rEnd+rStart)/2,   Color.black);
        fillRect((cEnd+cStart)/2+1,   (rEnd+rStart)/2+1,   Color.black);
        fillRect((cEnd+cStart)/2,   (rEnd+rStart)/2+1,   Color.black);*/
        chessBoard[(cEnd+cStart)/2+1][(rEnd+rStart)/2]   =   3;
        chessBoard[(cEnd+cStart)/2+1][(rEnd+rStart)/2+1]   =   3;
        chessBoard[(cEnd+cStart)/2][(rEnd+rStart)/2+1]   =   3;
        pause();
        repaint();}
      if(x <=cEnd   &&   x> (cEnd+cStart)/2   &&   y> =rStart   &&   y <=(rEnd+rStart)/2)
      {
        trio(x,   y,   (cEnd+cStart)/2+1,   cEnd,   rStart,     (rEnd+rStart)/2);
        trio((cEnd+cStart)/2+1,   (rEnd+rStart)/2+1,   (cEnd+cStart)/2+1,   cEnd,  
          (rEnd+rStart)/2+1,     rEnd);
        trio((cEnd+cStart)/2,   (rEnd+rStart)/2+1,   cStart,   (cEnd+cStart)/2,  
          (rEnd+rStart)/2+1,     rEnd);
        trio((cEnd+cStart)/2,   (rEnd+rStart)/2,   cStart,   (cEnd+cStart)/2,  
          rStart,     (rEnd+rStart)/2);
       
        /*fillRect((cEnd+cStart)/2+1,   (rEnd+rStart)/2+1,   Color.black);
        fillRect((cEnd+cStart)/2,   (rEnd+rStart)/2+1,Color.black);
        fillRect((cEnd+cStart)/2,   (rEnd+rStart)/2,   Color.black);*/
        chessBoard[(cEnd+cStart)/2+1][(rEnd+rStart)/2+1]   =   3;
        chessBoard[(cEnd+cStart)/2][(rEnd+rStart)/2+1]   =   3;
        chessBoard[(cEnd+cStart)/2][(rEnd+rStart)/2]   =   3;
        pause();
        repaint();   }
      if(x <=cEnd   &&   x> (cEnd+cStart)/2   &&   y <=rEnd   &&   y> (rEnd+rStart)/2)
      {
        trio(x,   y,   (cEnd+cStart)/2+1,   cEnd,   (rEnd+rStart)/2+1,   rEnd);
        trio((cEnd+cStart)/2,   (rEnd+rStart)/2+1,   cStart,   (cEnd+cStart)/2,  
          (rEnd+rStart)/2+1,     rEnd);
        trio((cEnd+cStart)/2,   (rEnd+rStart)/2,   cStart,   (cEnd+cStart)/2,  
          rStart,     (rEnd+rStart)/2);
        trio((cEnd+cStart)/2+1,   (rEnd+rStart)/2,   (cEnd+cStart)/2+1,   cEnd,  
          rStart,     (rEnd+rStart)/2);

        /*fillRect((cEnd+cStart)/2,   (rEnd+rStart)/2+1,   Color.black);
        fillRect((cEnd+cStart)/2,   (rEnd+rStart)/2,   Color.black);
        fillRect((cEnd+cStart)/2+1,   (rEnd+rStart)/2,   Color.black);*/
        chessBoard[(cEnd+cStart)/2][(rEnd+rStart)/2+1]   =   3;
        chessBoard[(cEnd+cStart)/2][(rEnd+rStart)/2]   =   3;
        chessBoard[(cEnd+cStart)/2+1][(rEnd+rStart)/2]   =   3;
        pause();
        repaint();   }
      if(x> =cStart   &&   x <=(cEnd+cStart)/2   &&   y <=rEnd   &&   y> (rEnd+rStart)/2)
      {
        trio(x,   y,   cStart,   (cEnd+cStart)/2,   (rEnd+rStart)/2+1,   rEnd);
        trio((cEnd+cStart)/2,   (rEnd+rStart)/2,   cStart,   (cEnd+cStart)/2,  
          rStart,     (rEnd+rStart)/2);
        trio((cEnd+cStart)/2+1,   (rEnd+rStart)/2,   (cEnd+cStart)/2+1,   cEnd,  
          rStart,     (rEnd+rStart)/2);
        trio((cEnd+cStart)/2+1,   (rEnd+rStart)/2+1,   (cEnd+cStart)/2+1,   cEnd,  
          (rEnd+rStart)/2+1,     rEnd);
          /*fillRect((cEnd+cStart)/2,   (rEnd+rStart)/2,   Color.black);
        fillRect((cEnd+cStart)/2+1,   (rEnd+rStart)/2,   Color.black);
        fillRect((cEnd+cStart)/2+1,   (rEnd+rStart)/2+1,   Color.black);*/
        chessBoard[(cEnd+cStart)/2][(rEnd+rStart)/2]   =   3;
        chessBoard[(cEnd+cStart)/2+1][(rEnd+rStart)/2]   =   3;
        chessBoard[(cEnd+cStart)/2+1][(rEnd+rStart)/2+1]   =   3;
        pause();
        repaint();   }}
    else
    {
      if(x> =cStart   &&   x <=(cEnd+cStart)/2   &&   y> =rStart   &&   y <=(rEnd+rStart)/2)
      {
        /*fillRect((cEnd+cStart)/2+1,   (rEnd+rStart)/2,   Color.red);
        fillRect((cEnd+cStart)/2+1,   (rEnd+rStart)/2+1,   Color.red);
        fillRect((cEnd+cStart)/2,   (rEnd+rStart)/2+1,   Color.red);*/
        chessBoard[(cEnd+cStart)/2+1][(rEnd+rStart)/2]   =   1;
        chessBoard[(cEnd+cStart)/2+1][(rEnd+rStart)/2+1]   =   1;
        chessBoard[(cEnd+cStart)/2][(rEnd+rStart)/2+1]   =   1;
        pause();
        repaint();}
      if(x <=cEnd   &&   x> (cEnd+cStart)/2   &&   y> =rStart   &&   y <=(rEnd+rStart)/2)
      {
        /*fillRect((cEnd+cStart)/2+1,   (rEnd+rStart)/2+1,   Color.green);
        fillRect((cEnd+cStart)/2,   (rEnd+rStart)/2+1,Color.green);
        fillRect((cEnd+cStart)/2,   (rEnd+rStart)/2,   Color.green);*/
        chessBoard[(cEnd+cStart)/2+1][(rEnd+rStart)/2+1]   =   2;
        chessBoard[(cEnd+cStart)/2][(rEnd+rStart)/2+1]   =   2;
        chessBoard[(cEnd+cStart)/2][(rEnd+rStart)/2]   =   2;
        pause();
        repaint();}
      if(x <=cEnd   &&   x> (cEnd+cStart)/2   &&   y <=rEnd   &&   y> (rEnd+rStart)/2)
      {
        /*fillRect((cEnd+cStart)/2,   (rEnd+rStart)/2+1,   Color.red);
        fillRect((cEnd+cStart)/2,   (rEnd+rStart)/2,   Color.red);
        fillRect((cEnd+cStart)/2+1,   (rEnd+rStart)/2,   Color.red);*/
        chessBoard[(cEnd+cStart)/2][(rEnd+rStart)/2+1]   =   1;
        chessBoard[(cEnd+cStart)/2][(rEnd+rStart)/2]   =   1;
        chessBoard[(cEnd+cStart)/2+1][(rEnd+rStart)/2]   =   1;
        pause();
        repaint();   }  
      if(x> =cStart   &&   x <=(cEnd+cStart)/2   &&   y <=rEnd   &&   y> (rEnd+rStart)/2)
      {
        /*fillRect((cEnd+cStart)/2,   (rEnd+rStart)/2,   Color.green);
        fillRect((cEnd+cStart)/2+1,   (rEnd+rStart)/2,   Color.green);
        fillRect((cEnd+cStart)/2+1,   (rEnd+rStart)/2+1,   Color.green);*/
        chessBoard[(cEnd+cStart)/2][(rEnd+rStart)/2]   =   2;
        chessBoard[(cEnd+cStart)/2+1][(rEnd+rStart)/2]   =   2;
        chessBoard[(cEnd+cStart)/2+1][(rEnd+rStart)/2+1]   =   2;
        pause();
        repaint();
        }}}    
  public   void   run()
  {   trio(x,   y,   1,   8,   1,   8);}
  public   void   pause()
  {try  
    {   Thread.sleep(1000);
    }   catch   (InterruptedException   e){}}
  public   void   fillRect(int   x,   int   y,   Color   color)
  {   Graphics2D   g2D   =   (Graphics2D)getGraphics();
    g2D.setPaint(color);
    g2D.fill(new   Rectangle2D.Float(10.0f+18*x,   40.0f+18*y,   15.0f,   15.0f));
  }      
}

支持(0中立(0反對(0單帖管理 | 引用 | 回復 回到頂部

返回版面帖子列表

有高手能把JAVA語言的Triomino問題改寫成C語言嗎?








簽名
主站蜘蛛池模板: 国产一区二区不卡 | 国产精品视频久久久久久 | 国产一区二区三区在线观看影院 | 亚洲精品国产啊女成拍色拍 | a毛片免费播放全部完整 | 一个人免费看的www 一及 片日本 | 亚洲欧美日韩另类精品一区二区三区 | 99精品这里只有精品高清视频 | 欧美最黄视频 | 欧美成人免费全部色播 | 欧美片欧美日韩国产综合片 | 亚洲一级网站 | 国产精品亚洲高清一区二区 | 在线观看免费毛片 | 亚州三级视频 | 亚洲第一区视频在线观看 | 精品久久久久不卡无毒 | 久久久99精品免费观看精品 | 美国一级片免费看 | 一本本久综合久久爱 | 日本亚欧乱色视频在线观看 | 久久国内精品自在自线观看 | 97国内免费久久久久久久久久 | 欧美一级免费大片 | 一本色道久久88亚洲综合 | 亚洲精品一区二区三区www | 亚洲一区浅井舞香在线播放 | 国产一级不卡毛片 | 日韩视频在线观看中字 | 男人干女人的视频 | 作爱在线观看 | 青青视频国产依人在线 | 久久国产视频网站 | 中国老太卖淫播放毛片 | 久久精品午夜 | 一级做a爱过程免费观看 | 毛片a级三毛片免费播放 | 综合久久一区二区三区 | 香焦视频在线观看黄 | 成 人 黄 色 免费播放 | 福利91 |