結果

提出番号 2111
提出者 rickytheta
言語 C++
提出日時 2018-08-04 15:19:42
問題名 (65)Small Grid and Score
結果 AC
点数 30%

テストケース

テストケース 結果 得点 実行時間 メモリ使用量
1 AC 22% 1ms 8704KB
2 AC 22% 2ms 7488KB
3 AC 22% 2ms 8736KB
4 AC 22% 2ms 7808KB
5 AC 22% 2ms 8416KB
6 AC 22% 2ms 8192KB
7 AC 22% 2ms 7520KB
8 AC 22% 1ms 7904KB
9 AC 22% 1ms 8352KB
10 AC 22% 2ms 7536KB
11 AC 22% 2ms 8144KB
12 AC 22% 2ms 7776KB
13 AC 22% 2ms 8048KB
14 AC 22% 2ms 8720KB
15 AC 22% 1ms 8304KB
16 AC 22% 2ms 8144KB
17 AC 22% 2ms 7824KB
18 AC 22% 2ms 8560KB
19 AC 22% 1ms 8240KB
20 AC 22% 2ms 8288KB
21 AC 22% 2ms 8416KB
22 AC 22% 2ms 7824KB
23 AC 22% 2ms 8192KB
24 AC 22% 2ms 8656KB
テストケース 結果 得点 実行時間 メモリ使用量
25 AC 22% 2ms 7408KB
26 AC 22% 2ms 8480KB
27 AC 22% 2ms 8416KB
28 AC 22% 2ms 8368KB
29 AC 22% 2ms 8352KB
30 AC 22% 2ms 8224KB
31 AC 22% 2ms 7792KB
32 AC 22% 2ms 8480KB
33 AC 22% 1ms 8720KB
34 AC 22% 2ms 7296KB
35 AC 22% 2ms 7968KB
36 AC 22% 2ms 8464KB
37 AC 22% 2ms 8272KB
38 AC 22% 2ms 8688KB
39 AC 22% 2ms 8416KB
40 AC 22% 1ms 8336KB
41 AC 22% 2ms 7792KB
42 AC 22% 2ms 8096KB
43 AC 22% 2ms 8048KB
44 AC 22% 2ms 8400KB
45 AC 22% 2ms 8432KB
46 AC 22% 2ms 8416KB
47 AC 22% 2ms 7616KB
48 AC 22% 2ms 8416KB
49 AC 22% 2ms 7840KB
50 AC 22% 2ms 7632KB
51 AC 22% 2ms 8368KB
52 AC 22% 2ms 8064KB
53 AC 22% 1ms 8096KB
54 AC 22% 1ms 8080KB
55 AC 22% 2ms 8048KB
56 AC 22% 2ms 8720KB
57 AC 22% 1ms 7904KB
58 AC 22% 2ms 8288KB
59 AC 22% 2ms 8448KB
60 AC 22% 2ms 8096KB
61 AC 22% 2ms 8448KB
62 AC 22% 2ms 8400KB
63 AC 22% 2ms 8192KB
64 AC 22% 2ms 8432KB
65 AC 22% 2ms 8432KB
66 AC 22% 2ms 8416KB
67 AC 22% 2ms 8448KB
68 AC 22% 2ms 8016KB
69 AC 22% 2ms 8192KB
70 AC 22% 2ms 8416KB
71 AC 22% 2ms 8000KB
72 AC 22% 2ms 8416KB
73 AC 22% 2ms 7904KB
74 AC 22% 2ms 7952KB
75 AC 22% 2ms 8304KB
76 AC 22% 2ms 8672KB
77 AC 22% 2ms 8064KB
78 AC 22% 2ms 8432KB
79 AC 22% 2ms 7968KB
80 AC 22% 2ms 8128KB
81 AC 22% 1ms 8688KB
82 AC 22% 2ms 7840KB
83 AC 22% 1ms 8064KB
84 AC 22% 2ms 8736KB
85 AC 22% 2ms 8176KB
86 AC 22% 2ms 8416KB
87 AC 22% 2ms 8688KB
88 AC 22% 2ms 7216KB
89 AC 22% 2ms 8384KB
90 AC 22% 2ms 8048KB
91 AC 22% 2ms 8416KB
92 AC 22% 2ms 8640KB
93 AC 22% 2ms 8416KB
94 AC 22% 2ms 8416KB
95 AC 22% 1ms 8704KB
96 AC 22% 2ms 7824KB
97 AC 22% 2ms 8176KB
98 AC 22% 2ms 8352KB
99 AC 22% 2ms 7632KB
100 AC 22% 2ms 8432KB
101 AC 22% 2ms 8736KB
102 AC 22% 2ms 8480KB
103 AC 22% 2ms 8128KB
104 AC 22% 2ms 8720KB
105 AC 22% 2ms 7808KB
106 AC 22% 2ms 8352KB
107 AC 22% 2ms 8176KB
108 AC 22% 2ms 8432KB
109 AC 22% 2ms 8400KB
110 AC 22% 1ms 7904KB
111 AC 22% 2ms 8416KB
112 AC 22% 2ms 8064KB
113 AC 22% 2ms 7536KB
114 AC 22% 2ms 7792KB
115 AC 22% 2ms 8080KB
116 AC 22% 2ms 7248KB
117 AC 22% 1ms 8064KB
118 AC 22% 2ms 8688KB
119 AC 22% 2ms 8048KB
120 AC 22% 2ms 7840KB
121 AC 22% 2ms 7520KB
122 AC 22% 2ms 8032KB
123 AC 22% 2ms 7648KB
124 AC 22% 2ms 7616KB

ソースコード

#include <bits/stdc++.h>

using namespace std;

typedef long long ll;
typedef vector<int> vi;
typedef vector<ll> vl;
typedef pair<int,int> pii;
typedef pair<ll,ll> pll;

typedef int _loop_int;
#define REP(i,n) for(_loop_int i=0;i<(_loop_int)(n);++i)
#define FOR(i,a,b) for(_loop_int i=(_loop_int)(a);i<(_loop_int)(b);++i)
#define FORR(i,a,b) for(_loop_int i=(_loop_int)(b)-1;i>=(_loop_int)(a);--i)

#define DEBUG(x) cout<<#x<<": "<<x<<endl
#define DEBUG_VEC(v) cout<<#v<<":";REP(i,v.size())cout<<" "<<v[i];cout<<endl
#define ALL(a) (a).begin(),(a).end()

#define CHMIN(a,b) a=min((a),(b))
#define CHMAX(a,b) a=max((a),(b))

// mod
const ll MOD = 1000000007ll;
#define FIX(a) ((a)%MOD+MOD)%MOD

// floating
typedef double Real;
const Real EPS = 1e-11;
#define EQ0(x) (abs(x)<EPS)
#define EQ(a,b) (abs(a-b)<EPS)
typedef complex<Real> P;

ll n;

int w = 65;
int h = 65;
int mp[65][65];
const int PATH = 1;
const int MULT = 2;
const int PLUS = 3;
const int BLOCK = 4;
char poi[] = {' ', '.', '2', '1', '#'};

int main(){
  scanf("%lld",&n);
  int px = 0, py = 0;
  REP(j,w)mp[h-1][j] = PATH;
  REP(i,h)mp[i][w-1] = PATH;
  REP(i,60){
    bool bl = n%2==0;
    n /= 2;
    if(!bl){
      if(i%2==0){
        FOR(i,py+1,h)mp[i][px] = PATH;
      }else{
        FOR(j,px+1,w)mp[py][j] = PATH;
      }
    }
    if(i%2==0){
      px++; mp[py][px] = PATH;
      px++; mp[py][px] = MULT;
    }else{
      py++; mp[py][px] = PATH;
      py++; mp[py][px] = MULT;
    }
  }
  mp[0][0] = PATH;
  REP(i,h)REP(j,w)if(mp[i][j]==0){
    mp[i][j] = BLOCK;
  }
  printf("%d %d\n",h,w);
  REP(i,h){
    REP(j,w)printf("%c",poi[mp[i][j]]);
    puts("");
  }
  return 0;
}