洛谷 1498 南蠻圖騰——模擬
阿新 • • 發佈:2018-08-01
clas spa blank problem sin lan () using ble
題目:https://www.luogu.org/problemnew/show/P1498
每多1,長和寬翻倍。先把圖案移到下面,同時把下面的右邊也弄上,然後把上面清空,找準位置copy下面的圖案。
#include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int N=1030; int A,n,m; char a[N][N<<1]; void init() { n=2;m=4; a[1][1]=a[1][4]=‘ ‘;a[1][2]=a[2][1]=‘/‘; a[1][3]=a[2][4]=‘\\‘;a[2][2]=a[2][3]=‘_‘; } int main() { init(); scanf("%d",&A); while(--A) { int yn=n,ym=m;n<<=1;m<<=1; for(int i=yn+1;i<=n;i++) for(int j=1;j<=ym;j++) a[i][j]=a[i-yn][j],a[i][j+ym]=a[i][j];for(int i=1;i<=yn;i++) for(int j=1;j<=m;j++)a[i][j]=‘ ‘; for(int i=1;i<=yn;i++) for(int j=(ym>>1)+1,k=1;k<=ym;j++,k++) a[i][j]=a[i+yn][k]; } for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++)printf("%c",a[i][j]);if(i!=n)printf("\n"); } return 0; }
洛谷 1498 南蠻圖騰——模擬