HDU 1057 - A New Growth Industry

來源:互聯網
上載者:User

標籤:

簡單的類比.

給定天數n,給定D[0]~D[15]給定一個20*20的矩陣。
每個格子內有一個0~3的數字,表示細菌數。
每天,每個格子將加上D[k],k表示這個格子以及上下左右相鄰格子的細菌之和(矩陣外算作0個,每格細菌個數不能超過3,不能低於0)。
問n天后的細菌情況。

 1 #include <iostream> 2 #include <cstdio> 3 using namespace std; 4 int t,n; 5 int d[16]; 6 int map[20][20],tmp[20][20]; 7 char arr[]={‘.‘,‘!‘,‘X‘,‘#‘}; 8 int main() 9 {10     scanf("%d",&t);11     while(t--)12     {13         scanf("%d",&n);14         for(int i=0;i<16;i++) scanf("%d",&d[i]);15         for(int i=0;i<20;i++)16             for(int j=0;j<20;j++)17                 scanf("%d",&map[i][j]);18         int sum;19         while(n--)20         {21             for(int i=0;i<20;i++)22                 for(int j=0;j<20;j++) tmp[i][j]=map[i][j];23             for(int i=0;i<20;i++)24                 for(int j=0;j<20;j++)25                 {26                     sum=tmp[i][j];27                     if(i>0) sum+=tmp[i-1][j];28                     if(i<19) sum+=tmp[i+1][j];29                     if(j>0) sum+=tmp[i][j-1];30                     if(j<19) sum+=tmp[i][j+1];31                     map[i][j]+=d[sum];32                     map[i][j]= map[i][j]>3? 3:map[i][j];33                     map[i][j]= map[i][j]<0? 0:map[i][j];34                 }35         }36         for(int i=0;i<20;i++)37         {38             for(int j=0;j<20;j++)39                 cout<<arr[map[i][j]];40             cout<<endl;41         }42         if(t) puts("");43     }44 }

 

HDU 1057 - A New Growth Industry

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.