第一題 html
題目 https://ac.nowcoder.com/acm/contest/334/Anode
永恆的經典 ios
#include <stdio.h> int main(int argc, char *argv[]) { printf("Helle World!\n"); return 0; }
第二題c++
題目 https://ac.nowcoder.com/acm/contest/334/B數組
巴什博弈ide
只有一堆n個物品,兩我的輪流從這堆物品中取物,規定每次至少取一個,最多取m個。最後取光者得勝。顯然,若是n=m+1,那麼因爲一次最多隻能取m個,因此,不管先取者拿走多少個,後取者都可以一次拿走剩餘的物品,後者取勝。spa
所以咱們發現瞭如何取勝的法則:若是n=(m+1)r+s,(r爲任意天然數,s≤m),那麼先取者要拿走s個物品,若是後取者拿走k(≤m)個,那麼先取者再拿走m+1-k個,結果剩下(m+1)(r-1)個,之後保持這樣的取法,那麼先取者確定能獲勝。總之,3d
要保持給對手留下(m+1)的倍數,就能最後獲勝。code
#include <stdio.h> int main(int argc, char *argv[]) { int n,m; while(~scanf("%d%d",&n,&m)) { if(n>=m) { for(int i=m;i<n;++i) printf("%d ",i); printf("%d\n",n); } else if(m%(n+1)==0) printf("You are loser\n"); else printf("%d\n",m%(n+1)); } return 0; }
第三題 htm
題目 https://ac.nowcoder.com/acm/contest/334/C
第四題
題目 https://ac.nowcoder.com/acm/contest/334/D
送分題 取最大值減去手臂長度便可,注意數據範圍恰好比 int 大,不是 INT_MAX
#include <cstdio> #include <algorithm> typedef long long ll; using namespace std; int main(int argc, char *argv[]) { ll n,l,maxn=-1,a; scanf("%lld%lld",&n,&l); for(int i=1;i<=n;++i) { scanf("%lld",&a); maxn=max(maxn,a); } if(maxn>l) printf("%lld\n",maxn-l); else printf("0\n"); return 0; }
第五題
題目 https://ac.nowcoder.com/acm/contest/334/E
第六題
題目 https://ac.nowcoder.com/acm/contest/334/F
用遞歸便可
#include <cstdio> #include <cstring> #include <algorithm> using namespace std; int n,a[100010]; int czcs(int x) { if(x>n) return 0; return min(czcs(a[x]),czcs(x+5))+1; } int main() { scanf("%d",&n); for (int i = 1 ; i <= n ; ++i) scanf("%d",&a[i]); printf("%d\n",czcs(1)*2); return 0; }
第七題
題目 https://ac.nowcoder.com/acm/contest/334/G
第八題
題目 https://ac.nowcoder.com/acm/contest/334/H
題目要求先找到鑰匙,再回寢室。但發現這樣的順序很難搜索,因此換一個思路,分別從寢室和開始位置去找同一個鑰匙,使得步數和最小,用兩次bfs便可。
類似的題目 https://www.cnblogs.com/Nicholas-Rain/p/10121493.html
#include<cstdio> #include<cstring> #include<algorithm> #include<queue> #define MAX 0x3f3f3f3f using namespace std; char map[2100][2100]; struct node { int x; int y; int step; }; int n,m; int STEP[2100][2100]; int nextd[4][2]={0,1,0,-1,1,0,-1,0}; void bfs(int x, int y) { bool vis[2100][2100]; memset(vis,false,sizeof(vis)); queue<node>q; node t,s; vis[x][y]=true; s.x=x; s.y=y; s.step = 0; q.push(s); while(!q.empty()) { s=q.front(); q.pop(); if (map[s.x][s.y]=='W') { if (STEP[s.x][s.y]==MAX) STEP[s.x][s.y]=s.step; else STEP[s.x][s.y]+=s.step; } for (int i=0;i<4;i++) { t.x=s.x+nextd[i][0]; t.y=s.y+nextd[i][1]; t.step=s.step + 1; if(t.x<0||t.x>=n||t.y<0||t.y>=m) continue; if(vis[t.x][t.y]) continue; if(map[t.x][t.y]=='#') continue; vis[t.x][t.y]=true; q.push(t); } } } int main() { node L,Q; int i,j; while(~scanf("%d %d",&n,&m)) { getchar(); memset(STEP,0x3f,sizeof(STEP)); for(i=0;i<n;i++) { scanf("%s",map[i]); for(j=0;j<m;j++) { if(map[i][j]=='L') { L.x=i; L.y=j; } if(map[i][j]=='Q') { Q.x=i; Q.y=j; } } } bfs(L.x,L.y); bfs(Q.x,Q.y); int min=MAX; for(i=0;i<n;i++) { for(j=0;j<m;j++) { if(min>STEP[i][j]) min=STEP[i][j]; } } printf("%d\n",min); } return 0; }
第九題
題目 https://ac.nowcoder.com/acm/contest/334/I
水題 用string.find()就能夠了
#include <bits/stdc++.h> using namespace std; int main() { int N;scanf("%d",&N); int ans = 0 ; while (N--){ string x;cin>>x; if (x.find("zailaiyihe") != string::npos){ ans++; } } cout<<ans<<endl; return 0; }
第十題
題目 https://ac.nowcoder.com/acm/contest/334/J
遞推,用兩個for就行了,注意取模。
#include <stdio.h> const int mod = 100000007; int f[10100]; int main(int argc, char *argv[]) { int n,i,j; f[0]=1; for(i=1;i<=10000;++i) { f[i]=f[i-1]; for(j=i-2;j>=0;j-=2) { f[i]=f[i]+f[j]; f[i]%=mod; } f[i]%=mod; } while(scanf("%d",&n)!=EOF) printf("%d\n",f[n]); return 0; }
第十一題
題目 https://ac.nowcoder.com/acm/contest/334/K
BBP公式 或各類求圓周率的收斂公式
該公式的直接結果,計算的是十六進制下的圓周率,咱們能夠把十六進制的結果,直接轉換成二進制,且不影響其餘數位。
#include <cstdio> #include <cmath> #include <iostream> #define MAX_C 56000 int a = 10000, b, c = MAX_C, d, e, f[MAX_C+1], g, n, ans, cnt; using namespace std; int main() { int pp; scanf("%d", &n); a = 10000; b = d = e = g = ans = cnt = 0; c = MAX_C; for (; b - c; ) f[b++] = a / 5; for (; d = 0, g = c * 2; c -= 14, ans = e + d / a, e = d % a, cnt++) { if (cnt * 4 > n) break; for (b = c; d += f[b]*a, f[b] = d % --g, d /= g--, --b; d *= b); } if (n % 4 == 0) cout << (ans / 1000); else if (n % 4 == 1) cout << ((ans / 100) % 10); else if (n % 4 == 2) cout << ((ans / 10) % 10); else if (n % 4 == 3) cout << (ans % 10); cout<<endl; return 0; }
打表
#include<iostream> using namespace std; int a[10011]={19260817,1,4,1,5,9,2,6,5,3,5,8,9,7,9,3,2,3,8,4,6,2,6,4,3,3,8,3,2,7,9,5,0,2,8,8,4,1,9,7,1,6,9,3,9,9,3,7,5,1,0,5,8,2,0,9,7,4,9,4,4,5,9,2,3,0,7,8,1,6,4,0,6,2,8,6,2,0,8,9,9,8,6,2,8,0,3,4,8,2,5,3,4,2,1,1,7,0,6,7,9,8,2,1,4,8,0,8,6,5,1,3,2,8,2,3,0,6,6,4,7,0,9,3,8,4,4,6,0,9,5,5,0,5,8,2,2,3,1,7,2,5,3,5,9,4,0,8,1,2,8,4,8,1,1,1,7,4,5,0,2,8,4,1,0,2,7,0,1,9,3,8,5,2,1,1,0,5,5,5,9,6,4,4,6,2,2,9,4,8,9,5,4,9,3,0,3,8,1,9,6,4,4,2,8,8,1,0,9,7,5,6,6,5,9,3,3,4,4,6,1,2,8,4,7,5,6,4,8,2,3,3,7,8,6,7,8,3,1,6,5,2,7,1,2,0,1,9,0,9,1,4,5,6,4,8,5,6,6,9,2,3,4,6,0,3,4,8,6,1,0,4,5,4,3,2,6,6,4,8,2,1,3,3,9,3,6,0,7,2,6,0,2,4,9,1,4,1,2,7,3,7,2,4,5,8,7,0,0,6,6,0,6,3,1,5,5,8,8,1,7,4,8,8,1,5,2,0,9,2,0,9,6,2,8,2,9,2,5,4,0,9,1,7,1,5,3,6,4,3,6,7,8,9,2,5,9,0,3,6,0,0,1,1,3,3,0,5,3,0,5,4,8,8,2,0,4,6,6,5,2,1,3,8,4,1,4,6,9,5,1,9,4,1,5,1,1,6,0,9,4,3,3,0,5,7,2,7,0,3,6,5,7,5,9,5,9,1,9,5,3,0,9,2,1,8,6,1,1,7,3,8,1,9,3,2,6,1,1,7,9,3,1,0,5,1,1,8,5,4,8,0,7,4,4,6,2,3,7,9,9,6,2,7,4,9,5,6,7,3,5,1,8,8,5,7,5,2,7,2,4,8,9,1,2,2,7,9,3,8,1,8,3,0,1,1,9,4,9,1,2,9,8,3,3,6,7,3,3,6,2,4,4,0,6,5,6,6,4,3,0,8,6,0,2,1,3,9,4,9,4,6,3,9,5,2,2,4,7,3,7,1,9,0,7,0,2,1,7,9,8,6,0,9,4,3,7,0,2,7,7,0,5,3,9,2,1,7,1,7,6,2,9,3,1,7,6,7,5,2,3,8,4,6,7,4,8,1,8,4,6,7,6,6,9,4,0,5,1,3,2,0,0,0,5,6,8,1,2,7,1,4,5,2,6,3,5,6,0,8,2,7,7,8,5,7,7,1,3,4,2,7,5,7,7,8,9,6,0,9,1,7,3,6,3,7,1,7,8,7,2,1,4,6,8,4,4,0,9,0,1,2,2,4,9,5,3,4,3,0,1,4,6,5,4,9,5,8,5,3,7,1,0,5,0,7,9,2,2,7,9,6,8,9,2,5,8,9,2,3,5,4,2,0,1,9,9,5,6,1,1,2,1,2,9,0,2,1,9,6,0,8,6,4,0,3,4,4,1,8,1,5,9,8,1,3,6,2,9,7,7,4,7,7,1,3,0,9,9,6,0,5,1,8,7,0,7,2,1,1,3,4,9,9,9,9,9,9,8,3,7,2,9,7,8,0,4,9,9,5,1,0,5,9,7,3,1,7,3,2,8,1,6,0,9,6,3,1,8,5,9,5,0,2,4,4,5,9,4,5,5,3,4,6,9,0,8,3,0,2,6,4,2,5,2,2,3,0,8,2,5,3,3,4,4,6,8,5,0,3,5,2,6,1,9,3,1,1,8,8,1,7,1,0,1,0,0,0,3,1,3,7,8,3,8,7,5,2,8,8,6,5,8,7,5,3,3,2,0,8,3,8,1,4,2,0,6,1,7,1,7,7,6,6,9,1,4,7,3,0,3,5,9,8,2,5,3,4,9,0,4,2,8,7,5,5,4,6,8,7,3,1,1,5,9,5,6,2,8,6,3,8,8,2,3,5,3,7,8,7,5,9,3,7,5,1,9,5,7,7,8,1,8,5,7,7,8,0,5,3,2,1,7,1,2,2,6,8,0,6,6,1,3,0,0,1,9,2,7,8,7,6,6,1,1,1,9,5,9,0,9,2,1,6,4,2,0,1,9,8,9,3,8,0,9,5,2,5,7,2,0,1,0,6,5,4,8,5,8,6,3,2,7,8,8,6,5,9,3,6,1,5,3,3,8,1,8,2,7,9,6,8,2,3,0,3,0,1,9,5,2,0,3,5,3,0,1,8,5,2,9,6,8,9,9,5,7,7,3,6,2,2,5,9,9,4,1,3,8,9,1,2,4,9,7,2,1,7,7,5,2,8,3,4,7,9,1,3,1,5,1,5,5,7,4,8,5,7,2,4,2,4,5,4,1,5,0,6,9,5,9,5,0,8,2,9,5,3,3,1,1,6,8,6,1,7,2,7,8,5,5,8,8,9,0,7,5,0,9,8,3,8,1,7,5,4,6,3,7,4,6,4,9,3,9,3,1,9,2,5,5,0,6,0,4,0,0,9,2,7,7,0,1,6,7,1,1,3,9,0,0,9,8,4,8,8,2,4,0,1,2,8,5,8,3,6,1,6,0,3,5,6,3,7,0,7,6,6,0,1,0,4,7,1,0,1,8,1,9,4,2,9,5,5,5,9,6,1,9,8,9,4,6,7,6,7,8,3,7,4,4,9,4,4,8,2,5,5,3,7,9,7,7,4,7,2,6,8,4,7,1,0,4,0,4,7,5,3,4,6,4,6,2,0,8,0,4,6,6,8,4,2,5,9,0,6,9,4,9,1,2,9,3,3,1,3,6,7,7,0,2,8,9,8,9,1,5,2,1,0,4,7,5,2,1,6,2,0,5,6,9,6,6,0,2,4,0,5,8,0,3,8,1,5,0,1,9,3,5,1,1,2,5,3,3,8,2,4,3,0,0,3,5,5,8,7,6,4,0,2,4,7,4,9,6,4,7,3,2,6,3,9,1,4,1,9,9,2,7,2,6,0,4,2,6,9,9,2,2,7,9,6,7,8,2,3,5,4,7,8,1,6,3,6,0,0,9,3,4,1,7,2,1,6,4,1,2,1,9,9,2,4,5,8,6,3,1,5,0,3,0,2,8,6,1,8,2,9,7,4,5,5,5,7,0,6,7,4,9,8,3,8,5,0,5,4,9,4,5,8,8,5,8,6,9,2,6,9,9,5,6,9,0,9,2,7,2,1,0,7,9,7,5,0,9,3,0,2,9,5,5,3,2,1,1,6,5,3,4,4,9,8,7,2,0,2,7,5,5,9,6,0,2,3,6,4,8,0,6,6,5,4,9,9,1,1,9,8,8,1,8,3,4,7,9,7,7,5,3,5,6,6,3,6,9,8,0,7,4,2,6,5,4,2,5,2,7,8,6,2,5,5,1,8,1,8,4,1,7,5,7,4,6,7,2,8,9,0,9,7,7,7,7,2,7,9,3,8,0,0,0,8,1,6,4,7,0,6,0,0,1,6,1,4,5,2,4,9,1,9,2,1,7,3,2,1,7,2,1,4,7,7,2,3,5,0,1,4,1,4,4,1,9,7,3,5,6,8,5,4,8,1,6,1,3,6,1,1,5,7,3,5,2,5,5,2,1,3,3,4,7,5,7,4,1,8,4,9,4,6,8,4,3,8,5,2,3,3,2,3,9,0,7,3,9,4,1,4,3,3,3,4,5,4,7,7,6,2,4,1,6,8,6,2,5,1,8,9,8,3,5,6,9,4,8,5,5,6,2,0,9,9,2,1,9,2,2,2,1,8,4,2,7,2,5,5,0,2,5,4,2,5,6,8,8,7,6,7,1,7,9,0,4,9,4,6,0,1,6,5,3,4,6,6,8,0,4,9,8,8,6,2,7,2,3,2,7,9,1,7,8,6,0,8,5,7,8,4,3,8,3,8,2,7,9,6,7,9,7,6,6,8,1,4,5,4,1,0,0,9,5,3,8,8,3,7,8,6,3,6,0,9,5,0,6,8,0,0,6,4,2,2,5,1,2,5,2,0,5,1,1,7,3,9,2,9,8,4,8,9,6,0,8,4,1,2,8,4,8,8,6,2,6,9,4,5,6,0,4,2,4,1,9,6,5,2,8,5,0,2,2,2,1,0,6,6,1,1,8,6,3,0,6,7,4,4,2,7,8,6,2,2,0,3,9,1,9,4,9,4,5,0,4,7,1,2,3,7,1,3,7,8,6,9,6,0,9,5,6,3,6,4,3,7,1,9,1,7,2,8,7,4,6,7,7,6,4,6,5,7,5,7,3,9,6,2,4,1,3,8,9,0,8,6,5,8,3,2,6,4,5,9,9,5,8,1,3,3,9,0,4,7,8,0,2,7,5,9,0,0,9,9,4,6,5,7,6,4,0,7,8,9,5,1,2,6,9,4,6,8,3,9,8,3,5,2,5,9,5,7,0,9,8,2,5,8,2,2,6,2,0,5,2,2,4,8,9,4,0,7,7,2,6,7,1,9,4,7,8,2,6,8,4,8,2,6,0,1,4,7,6,9,9,0,9,0,2,6,4,0,1,3,6,3,9,4,4,3,7,4,5,5,3,0,5,0,6,8,2,0,3,4,9,6,2,5,2,4,5,1,7,4,9,3,9,9,6,5,1,4,3,1,4,2,9,8,0,9,1,9,0,6,5,9,2,5,0,9,3,7,2,2,1,6,9,6,4,6,1,5,1,5,7,0,9,8,5,8,3,8,7,4,1,0,5,9,7,8,8,5,9,5,9,7,7,2,9,7,5,4,9,8,9,3,0,1,6,1,7,5,3,9,2,8,4,6,8,1,3,8,2,6,8,6,8,3,8,6,8,9,4,2,7,7,4,1,5,5,9,9,1,8,5,5,9,2,5,2,4,5,9,5,3,9,5,9,4,3,1,0,4,9,9,7,2,5,2,4,6,8,0,8,4,5,9,8,7,2,7,3,6,4,4,6,9,5,8,4,8,6,5,3,8,3,6,7,3,6,2,2,2,6,2,6,0,9,9,1,2,4,6,0,8,0,5,1,2,4,3,8,8,4,3,9,0,4,5,1,2,4,4,1,3,6,5,4,9,7,6,2,7,8,0,7,9,7,7,1,5,6,9,1,4,3,5,9,9,7,7,0,0,1,2,9,6,1,6,0,8,9,4,4,1,6,9,4,8,6,8,5,5,5,8,4,8,4,0,6,3,5,3,4,2,2,0,7,2,2,2,5,8,2,8,4,8,8,6,4,8,1,5,8,4,5,6,0,2,8,5,0,6,0,1,6,8,4,2,7,3,9,4,5,2,2,6,7,4,6,7,6,7,8,8,9,5,2,5,2,1,3,8,5,2,2,5,4,9,9,5,4,6,6,6,7,2,7,8,2,3,9,8,6,4,5,6,5,9,6,1,1,6,3,5,4,8,8,6,2,3,0,5,7,7,4,5,6,4,9,8,0,3,5,5,9,3,6,3,4,5,6,8,1,7,4,3,2,4,1,1,2,5,1,5,0,7,6,0,6,9,4,7,9,4,5,1,0,9,6,5,9,6,0,9,4,0,2,5,2,2,8,8,7,9,7,1,0,8,9,3,1,4,5,6,6,9,1,3,6,8,6,7,2,2,8,7,4,8,9,4,0,5,6,0,1,0,1,5,0,3,3,0,8,6,1,7,9,2,8,6,8,0,9,2,0,8,7,4,7,6,0,9,1,7,8,2,4,9,3,8,5,8,9,0,0,9,7,1,4,9,0,9,6,7,5,9,8,5,2,6,1,3,6,5,5,4,9,7,8,1,8,9,3,1,2,9,7,8,4,8,2,1,6,8,2,9,9,8,9,4,8,7,2,2,6,5,8,8,0,4,8,5,7,5,6,4,0,1,4,2,7,0,4,7,7,5,5,5,1,3,2,3,7,9,6,4,1,4,5,1,5,2,3,7,4,6,2,3,4,3,6,4,5,4,2,8,5,8,4,4,4,7,9,5,2,6,5,8,6,7,8,2,1,0,5,1,1,4,1,3,5,4,7,3,5,7,3,9,5,2,3,1,1,3,4,2,7,1,6,6,1,0,2,1,3,5,9,6,9,5,3,6,2,3,1,4,4,2,9,5,2,4,8,4,9,3,7,1,8,7,1,1,0,1,4,5,7,6,5,4,0,3,5,9,0,2,7,9,9,3,4,4,0,3,7,4,2,0,0,7,3,1,0,5,7,8,5,3,9,0,6,2,1,9,8,3,8,7,4,4,7,8,0,8,4,7,8,4,8,9,6,8,3,3,2,1,4,4,5,7,1,3,8,6,8,7,5,1,9,4,3,5,0,6,4,3,0,2,1,8,4,5,3,1,9,1,0,4,8,4,8,1,0,0,5,3,7,0,6,1,4,6,8,0,6,7,4,9,1,9,2,7,8,1,9,1,1,9,7,9,3,9,9,5,2,0,6,1,4,1,9,6,6,3,4,2,8,7,5,4,4,4,0,6,4,3,7,4,5,1,2,3,7,1,8,1,9,2,1,7,9,9,9,8,3,9,1,0,1,5,9,1,9,5,6,1,8,1,4,6,7,5,1,4,2,6,9,1,2,3,9,7,4,8,9,4,0,9,0,7,1,8,6,4,9,4,2,3,1,9,6,1,5,6,7,9,4,5,2,0,8,0,9,5,1,4,6,5,5,0,2,2,5,2,3,1,6,0,3,8,8,1,9,3,0,1,4,2,0,9,3,7,6,2,1,3,7,8,5,5,9,5,6,6,3,8,9,3,7,7,8,7,0,8,3,0,3,9,0,6,9,7,9,2,0,7,7,3,4,6,7,2,2,1,8,2,5,6,2,5,9,9,6,6,1,5,0,1,4,2,1,5,0,3,0,6,8,0,3,8,4,4,7,7,3,4,5,4,9,2,0,2,6,0,5,4,1,4,6,6,5,9,2,5,2,0,1,4,9,7,4,4,2,8,5,0,7,3,2,5,1,8,6,6,6,0,0,2,1,3,2,4,3,4,0,8,8,1,9,0,7,1,0,4,8,6,3,3,1,7,3,4,6,4,9,6,5,1,4,5,3,9,0,5,7,9,6,2,6,8,5,6,1,0,0,5,5,0,8,1,0,6,6,5,8,7,9,6,9,9,8,1,6,3,5,7,4,7,3,6,3,8,4,0,5,2,5,7,1,4,5,9,1,0,2,8,9,7,0,6,4,1,4,0,1,1,0,9,7,1,2,0,6,2,8,0,4,3,9,0,3,9,7,5,9,5,1,5,6,7,7,1,5,7,7,0,0,4,2,0,3,3,7,8,6,9,9,3,6,0,0,7,2,3,0,5,5,8,7,6,3,1,7,6,3,5,9,4,2,1,8,7,3,1,2,5,1,4,7,1,2,0,5,3,2,9,2,8,1,9,1,8,2,6,1,8,6,1,2,5,8,6,7,3,2,1,5,7,9,1,9,8,4,1,4,8,4,8,8,2,9,1,6,4,4,7,0,6,0,9,5,7,5,2,7,0,6,9,5,7,2,2,0,9,1,7,5,6,7,1,1,6,7,2,2,9,1,0,9,8,1,6,9,0,9,1,5,2,8,0,1,7,3,5,0,6,7,1,2,7,4,8,5,8,3,2,2,2,8,7,1,8,3,5,2,0,9,3,5,3,9,6,5,7,2,5,1,2,1,0,8,3,5,7,9,1,5,1,3,6,9,8,8,2,0,9,1,4,4,4,2,1,0,0,6,7,5,1,0,3,3,4,6,7,1,1,0,3,1,4,1,2,6,7,1,1,1,3,6,9,9,0,8,6,5,8,5,1,6,3,9,8,3,1,5,0,1,9,7,0,1,6,5,1,5,1,1,6,8,5,1,7,1,4,3,7,6,5,7,6,1,8,3,5,1,5,5,6,5,0,8,8,4,9,0,9,9,8,9,8,5,9,9,8,2,3,8,7,3,4,5,5,2,8,3,3,1,6,3,5,5,0,7,6,4,7,9,1,8,5,3,5,8,9,3,2,2,6,1,8,5,4,8,9,6,3,2,1,3,2,9,3,3,0,8,9,8,5,7,0,6,4,2,0,4,6,7,5,2,5,9,0,7,0,9,1,5,4,8,1,4,1,6,5,4,9,8,5,9,4,6,1,6,3,7,1,8,0,2,7,0,9,8,1,9,9,4,3,0,9,9,2,4,4,8,8,9,5,7,5,7,1,2,8,2,8,9,0,5,9,2,3,2,3,3,2,6,0,9,7,2,9,9,7,1,2,0,8,4,4,3,3,5,7,3,2,6,5,4,8,9,3,8,2,3,9,1,1,9,3,2,5,9,7,4,6,3,6,6,7,3,0,5,8,3,6,0,4,1,4,2,8,1,3,8,8,3,0,3,2,0,3,8,2,4,9,0,3,7,5,8,9,8,5,2,4,3,7,4,4,1,7,0,2,9,1,3,2,7,6,5,6,1,8,0,9,3,7,7,3,4,4,4,0,3,0,7,0,7,4,6,9,2,1,1,2,0,1,9,1,3,0,2,0,3,3,0,3,8,0,1,9,7,6,2,1,1,0,1,1,0,0,4,4,9,2,9,3,2,1,5,1,6,0,8,4,2,4,4,4,8,5,9,6,3,7,6,6,9,8,3,8,9,5,2,2,8,6,8,4,7,8,3,1,2,3,5,5,2,6,5,8,2,1,3,1,4,4,9,5,7,6,8,5,7,2,6,2,4,3,3,4,4,1,8,9,3,0,3,9,6,8,6,4,2,6,2,4,3,4,1,0,7,7,3,2,2,6,9,7,8,0,2,8,0,7,3,1,8,9,1,5,4,4,1,1,0,1,0,4,4,6,8,2,3,2,5,2,7,1,6,2,0,1,0,5,2,6,5,2,2,7,2,1,1,1,6,6,0,3,9,6,6,6,5,5,7,3,0,9,2,5,4,7,1,1,0,5,5,7,8,5,3,7,6,3,4,6,6,8,2,0,6,5,3,1,0,9,8,9,6,5,2,6,9,1,8,6,2,0,5,6,4,7,6,9,3,1,2,5,7,0,5,8,6,3,5,6,6,2,0,1,8,5,5,8,1,0,0,7,2,9,3,6,0,6,5,9,8,7,6,4,8,6,1,1,7,9,1,0,4,5,3,3,4,8,8,5,0,3,4,6,1,1,3,6,5,7,6,8,6,7,5,3,2,4,9,4,4,1,6,6,8,0,3,9,6,2,6,5,7,9,7,8,7,7,1,8,5,5,6,0,8,4,5,5,2,9,6,5,4,1,2,6,6,5,4,0,8,5,3,0,6,1,4,3,4,4,4,3,1,8,5,8,6,7,6,9,7,5,1,4,5,6,6,1,4,0,6,8,0,0,7,0,0,2,3,7,8,7,7,6,5,9,1,3,4,4,0,1,7,1,2,7,4,9,4,7,0,4,2,0,5,6,2,2,3,0,5,3,8,9,9,4,5,6,1,3,1,4,0,7,1,1,2,7,0,0,0,4,0,7,8,5,4,7,3,3,2,6,9,9,3,9,0,8,1,4,5,4,6,6,4,6,4,5,8,8,0,7,9,7,2,7,0,8,2,6,6,8,3,0,6,3,4,3,2,8,5,8,7,8,5,6,9,8,3,0,5,2,3,5,8,0,8,9,3,3,0,6,5,7,5,7,4,0,6,7,9,5,4,5,7,1,6,3,7,7,5,2,5,4,2,0,2,1,1,4,9,5,5,7,6,1,5,8,1,4,0,0,2,5,0,1,2,6,2,2,8,5,9,4,1,3,0,2,1,6,4,7,1,5,5,0,9,7,9,2,5,9,2,3,0,9,9,0,7,9,6,5,4,7,3,7,6,1,2,5,5,1,7,6,5,6,7,5,1,3,5,7,5,1,7,8,2,9,6,6,6,4,5,4,7,7,9,1,7,4,5,0,1,1,2,9,9,6,1,4,8,9,0,3,0,4,6,3,9,9,4,7,1,3,2,9,6,2,1,0,7,3,4,0,4,3,7,5,1,8,9,5,7,3,5,9,6,1,4,5,8,9,0,1,9,3,8,9,7,1,3,1,1,1,7,9,0,4,2,9,7,8,2,8,5,6,4,7,5,0,3,2,0,3,1,9,8,6,9,1,5,1,4,0,2,8,7,0,8,0,8,5,9,9,0,4,8,0,1,0,9,4,1,2,1,4,7,2,2,1,3,1,7,9,4,7,6,4,7,7,7,2,6,2,2,4,1,4,2,5,4,8,5,4,5,4,0,3,3,2,1,5,7,1,8,5,3,0,6,1,4,2,2,8,8,1,3,7,5,8,5,0,4,3,0,6,3,3,2,1,7,5,1,8,2,9,7,9,8,6,6,2,2,3,7,1,7,2,1,5,9,1,6,0,7,7,1,6,6,9,2,5,4,7,4,8,7,3,8,9,8,6,6,5,4,9,4,9,4,5,0,1,1,4,6,5,4,0,6,2,8,4,3,3,6,6,3,9,3,7,9,0,0,3,9,7,6,9,2,6,5,6,7,2,1,4,6,3,8,5,3,0,6,7,3,6,0,9,6,5,7,1,2,0,9,1,8,0,7,6,3,8,3,2,7,1,6,6,4,1,6,2,7,4,8,8,8,8,0,0,7,8,6,9,2,5,6,0,2,9,0,2,2,8,4,7,2,1,0,4,0,3,1,7,2,1,1,8,6,0,8,2,0,4,1,9,0,0,0,4,2,2,9,6,6,1,7,1,1,9,6,3,7,7,9,2,1,3,3,7,5,7,5,1,1,4,9,5,9,5,0,1,5,6,6,0,4,9,6,3,1,8,6,2,9,4,7,2,6,5,4,7,3,6,4,2,5,2,3,0,8,1,7,7,0,3,6,7,5,1,5,9,0,6,7,3,5,0,2,3,5,0,7,2,8,3,5,4,0,5,6,7,0,4,0,3,8,6,7,4,3,5,1,3,6,2,2,2,2,4,7,7,1,5,8,9,1,5,0,4,9,5,3,0,9,8,4,4,4,8,9,3,3,3,0,9,6,3,4,0,8,7,8,0,7,6,9,3,2,5,9,9,3,9,7,8,0,5,4,1,9,3,4,1,4,4,7,3,7,7,4,4,1,8,4,2,6,3,1,2,9,8,6,0,8,0,9,9,8,8,8,6,8,7,4,1,3,2,6,0,4,7,2,1,5,6,9,5,1,6,2,3,9,6,5,8,6,4,5,7,3,0,2,1,6,3,1,5,9,8,1,9,3,1,9,5,1,6,7,3,5,3,8,1,2,9,7,4,1,6,7,7,2,9,4,7,8,6,7,2,4,2,2,9,2,4,6,5,4,3,6,6,8,0,0,9,8,0,6,7,6,9,2,8,2,3,8,2,8,0,6,8,9,9,6,4,0,0,4,8,2,4,3,5,4,0,3,7,0,1,4,1,6,3,1,4,9,6,5,8,9,7,9,4,0,9,2,4,3,2,3,7,8,9,6,9,0,7,0,6,9,7,7,9,4,2,2,3,6,2,5,0,8,2,2,1,6,8,8,9,5,7,3,8,3,7,9,8,6,2,3,0,0,1,5,9,3,7,7,6,4,7,1,6,5,1,2,2,8,9,3,5,7,8,6,0,1,5,8,8,1,6,1,7,5,5,7,8,2,9,7,3,5,2,3,3,4,4,6,0,4,2,8,1,5,1,2,6,2,7,2,0,3,7,3,4,3,1,4,6,5,3,1,9,7,7,7,7,4,1,6,0,3,1,9,9,0,6,6,5,5,4,1,8,7,6,3,9,7,9,2,9,3,3,4,4,1,9,5,2,1,5,4,1,3,4,1,8,9,9,4,8,5,4,4,4,7,3,4,5,6,7,3,8,3,1,6,2,4,9,9,3,4,1,9,1,3,1,8,1,4,8,0,9,2,7,7,7,7,1,0,3,8,6,3,8,7,7,3,4,3,1,7,7,2,0,7,5,4,5,6,5,4,5,3,2,2,0,7,7,7,0,9,2,1,2,0,1,9,0,5,1,6,6,0,9,6,2,8,0,4,9,0,9,2,6,3,6,0,1,9,7,5,9,8,8,2,8,1,6,1,3,3,2,3,1,6,6,6,3,6,5,2,8,6,1,9,3,2,6,6,8,6,3,3,6,0,6,2,7,3,5,6,7,6,3,0,3,5,4,4,7,7,6,2,8,0,3,5,0,4,5,0,7,7,7,2,3,5,5,4,7,1,0,5,8,5,9,5,4,8,7,0,2,7,9,0,8,1,4,3,5,6,2,4,0,1,4,5,1,7,1,8,0,6,2,4,6,4,3,6,2,6,7,9,4,5,6,1,2,7,5,3,1,8,1,3,4,0,7,8,3,3,0,3,3,6,2,5,4,2,3,2,7,8,3,9,4,4,9,7,5,3,8,2,4,3,7,2,0,5,8,3,5,3,1,1,4,7,7,1,1,9,9,2,6,0,6,3,8,1,3,3,4,6,7,7,6,8,7,9,6,9,5,9,7,0,3,0,9,8,3,3,9,1,3,0,7,7,1,0,9,8,7,0,4,0,8,5,9,1,3,3,7,4,6,4,1,4,4,2,8,2,2,7,7,2,6,3,4,6,5,9,4,7,0,4,7,4,5,8,7,8,4,7,7,8,7,2,0,1,9,2,7,7,1,5,2,8,0,7,3,1,7,6,7,9,0,7,7,0,7,1,5,7,2,1,3,4,4,4,7,3,0,6,0,5,7,0,0,7,3,3,4,9,2,4,3,6,9,3,1,1,3,8,3,5,0,4,9,3,1,6,3,1,2,8,4,0,4,2,5,1,2,1,9,2,5,6,5,1,7,9,8,0,6,9,4,1,1,3,5,2,8,0,1,3,1,4,7,0,1,3,0,4,7,8,1,6,4,3,7,8,8,5,1,8,5,2,9,0,9,2,8,5,4,5,2,0,1,1,6,5,8,3,9,3,4,1,9,6,5,6,2,1,3,4,9,1,4,3,4,1,5,9,5,6,2,5,8,6,5,8,6,5,5,7,0,5,5,2,6,9,0,4,9,6,5,2,0,9,8,5,8,0,3,3,8,5,0,7,2,2,4,2,6,4,8,2,9,3,9,7,2,8,5,8,4,7,8,3,1,6,3,0,5,7,7,7,7,5,6,0,6,8,8,8,7,6,4,4,6,2,4,8,2,4,6,8,5,7,9,2,6,0,3,9,5,3,5,2,7,7,3,4,8,0,3,0,4,8,0,2,9,0,0,5,8,7,6,0,7,5,8,2,5,1,0,4,7,4,7,0,9,1,6,4,3,9,6,1,3,6,2,6,7,6,0,4,4,9,2,5,6,2,7,4,2,0,4,2,0,8,3,2,0,8,5,6,6,1,1,9,0,6,2,5,4,5,4,3,3,7,2,1,3,1,5,3,5,9,5,8,4,5,0,6,8,7,7,2,4,6,0,2,9,0,1,6,1,8,7,6,6,7,9,5,2,4,0,6,1,6,3,4,2,5,2,2,5,7,7,1,9,5,4,2,9,1,6,2,9,9,1,9,3,0,6,4,5,5,3,7,7,9,9,1,4,0,3,7,3,4,0,4,3,2,8,7,5,2,6,2,8,8,8,9,6,3,9,9,5,8,7,9,4,7,5,7,2,9,1,7,4,6,4,2,6,3,5,7,4,5,5,2,5,4,0,7,9,0,9,1,4,5,1,3,5,7,1,1,1,3,6,9,4,1,0,9,1,1,9,3,9,3,2,5,1,9,1,0,7,6,0,2,0,8,2,5,2,0,2,6,1,8,7,9,8,5,3,1,8,8,7,7,0,5,8,4,2,9,7,2,5,9,1,6,7,7,8,1,3,1,4,9,6,9,9,0,0,9,0,1,9,2,1,1,6,9,7,1,7,3,7,2,7,8,4,7,6,8,4,7,2,6,8,6,0,8,4,9,0,0,3,3,7,7,0,2,4,2,4,2,9,1,6,5,1,3,0,0,5,0,0,5,1,6,8,3,2,3,3,6,4,3,5,0,3,8,9,5,1,7,0,2,9,8,9,3,9,2,2,3,3,4,5,1,7,2,2,0,1,3,8,1,2,8,0,6,9,6,5,0,1,1,7,8,4,4,0,8,7,4,5,1,9,6,0,1,2,1,2,2,8,5,9,9,3,7,1,6,2,3,1,3,0,1,7,1,1,4,4,4,8,4,6,4,0,9,0,3,8,9,0,6,4,4,9,5,4,4,4,0,0,6,1,9,8,6,9,0,7,5,4,8,5,1,6,0,2,6,3,2,7,5,0,5,2,9,8,3,4,9,1,8,7,4,0,7,8,6,6,8,0,8,8,1,8,3,3,8,5,1,0,2,2,8,3,3,4,5,0,8,5,0,4,8,6,0,8,2,5,0,3,9,3,0,2,1,3,3,2,1,9,7,1,5,5,1,8,4,3,0,6,3,5,4,5,5,0,0,7,6,6,8,2,8,2,9,4,9,3,0,4,1,3,7,7,6,5,5,2,7,9,3,9,7,5,1,7,5,4,6,1,3,9,5,3,9,8,4,6,8,3,3,9,3,6,3,8,3,0,4,7,4,6,1,1,9,9,6,6,5,3,8,5,8,1,5,3,8,4,2,0,5,6,8,5,3,3,8,6,2,1,8,6,7,2,5,2,3,3,4,0,2,8,3,0,8,7,1,1,2,3,2,8,2,7,8,9,2,1,2,5,0,7,7,1,2,6,2,9,4,6,3,2,2,9,5,6,3,9,8,9,8,9,8,9,3,5,8,2,1,1,6,7,4,5,6,2,7,0,1,0,2,1,8,3,5,6,4,6,2,2,0,1,3,4,9,6,7,1,5,1,8,8,1,9,0,9,7,3,0,3,8,1,1,9,8,0,0,4,9,7,3,4,0,7,2,3,9,6,1,0,3,6,8,5,4,0,6,6,4,3,1,9,3,9,5,0,9,7,9,0,1,9,0,6,9,9,6,3,9,5,5,2,4,5,3,0,0,5,4,5,0,5,8,0,6,8,5,5,0,1,9,5,6,7,3,0,2,2,9,2,1,9,1,3,9,3,3,9,1,8,5,6,8,0,3,4,4,9,0,3,9,8,2,0,5,9,5,5,1,0,0,2,2,6,3,5,3,5,3,6,1,9,2,0,4,1,9,9,4,7,4,5,5,3,8,5,9,3,8,1,0,2,3,4,3,9,5,5,4,4,9,5,9,7,7,8,3,7,7,9,0,2,3,7,4,2,1,6,1,7,2,7,1,1,1,7,2,3,6,4,3,4,3,5,4,3,9,4,7,8,2,2,1,8,1,8,5,2,8,6,2,4,0,8,5,1,4,0,0,6,6,6,0,4,4,3,3,2,5,8,8,8,5,6,9,8,6,7,0,5,4,3,1,5,4,7,0,6,9,6,5,7,4,7,4,5,8,5,5,0,3,3,2,3,2,3,3,4,2,1,0,7,3,0,1,5,4,5,9,4,0,5,1,6,5,5,3,7,9,0,6,8,6,6,2,7,3,3,3,7,9,9,5,8,5,1,1,5,6,2,5,7,8,4,3,2,2,9,8,8,2,7,3,7,2,3,1,9,8,9,8,7,5,7,1,4,1,5,9,5,7,8,1,1,1,9,6,3,5,8,3,3,0,0,5,9,4,0,8,7,3,0,6,8,1,2,1,6,0,2,8,7,6,4,9,6,2,8,6,7,4,4,6,0,4,7,7,4,6,4,9,1,5,9,9,5,0,5,4,9,7,3,7,4,2,5,6,2,6,9,0,1,0,4,9,0,3,7,7,8,1,9,8,6,8,3,5,9,3,8,1,4,6,5,7,4,1,2,6,8,0,4,9,2,5,6,4,8,7,9,8,5,5,6,1,4,5,3,7,2,3,4,7,8,6,7,3,3,0,3,9,0,4,6,8,8,3,8,3,4,3,6,3,4,6,5,5,3,7,9,4,9,8,6,4,1,9,2,7,0,5,6,3,8,7,2,9,3,1,7,4,8,7,2,3,3,2,0,8,3,7,6,0,1,1,2,3,0,2,9,9,1,1,3,6,7,9,3,8,6,2,7,0,8,9,4,3,8,7,9,9,3,6,2,0,1,6,2,9,5,1,5,4,1,3,3,7,1,4,2,4,8,9,2,8,3,0,7,2,2,0,1,2,6,9,0,1,4,7,5,4,6,6,8,4,7,6,5,3,5,7,6,1,6,4,7,7,3,7,9,4,6,7,5,2,0,0,4,9,0,7,5,7,1,5,5,5,2,7,8,1,9,6,5,3,6,2,1,3,2,3,9,2,6,4,0,6,1,6,0,1,3,6,3,5,8,1,5,5,9,0,7,4,2,2,0,2,0,2,0,3,1,8,7,2,7,7,6,0,5,2,7,7,2,1,9,0,0,5,5,6,1,4,8,4,2,5,5,5,1,8,7,9,2,5,3,0,3,4,3,5,1,3,9,8,4,4,2,5,3,2,2,3,4,1,5,7,6,2,3,3,6,1,0,6,4,2,5,0,6,3,9,0,4,9,7,5,0,0,8,6,5,6,2,7,1,0,9,5,3,5,9,1,9,4,6,5,8,9,7,5,1,4,1,3,1,0,3,4,8,2,2,7,6,9,3,0,6,2,4,7,4,3,5,3,6,3,2,5,6,9,1,6,0,7,8,1,5,4,7,8,1,8,1,1,5,2,8,4,3,6,6,7,9,5,7,0,6,1,1,0,8,6,1,5,3,3,1,5,0,4,4,5,2,1,2,7,4,7,3,9,2,4,5,4,4,9,4,5,4,2,3,6,8,2,8,8,6,0,6,1,3,4,0,8,4,1,4,8,6,3,7,7,6,7,0,0,9,6,1,2,0,7,1,5,1,2,4,9,1,4,0,4,3,0,2,7,2,5,3,8,6,0,7,6,4,8,2,3,6,3,4,1,4,3,3,4,6,2,3,5,1,8,9,7,5,7,6,6,4,5,2,1,6,4,1,3,7,6,7,9,6,9,0,3,1,4,9,5,0,1,9,1,0,8,5,7,5,9,8,4,4,2,3,9,1,9,8,6,2,9,1,6,4,2,1,9,3,9,9,4,9,0,7,2,3,6,2,3,4,6,4,6,8,4,4,1,1,7,3,9,4,0,3,2,6,5,9,1,8,4,0,4,4,3,7,8,0,5,1,3,3,3,8,9,4,5,2,5,7,4,2,3,9,9,5,0,8,2,9,6,5,9,1,2,2,8,5,0,8,5,5,5,8,2,1,5,7,2,5,0,3,1,0,7,1,2,5,7,0,1,2,6,6,8,3,0,2,4,0,2,9,2,9,5,2,5,2,2,0,1,1,8,7,2,6,7,6,7,5,6,2,2,0,4,1,5,4,2,0,5,1,6,1,8,4,1,6,3,4,8,4,7,5,6,5,1,6,9,9,9,8,1,1,6,1,4,1,0,1,0,0,2,9,9,6,0,7,8,3,8,6,9,0,9,2,9,1,6,0,3,0,2,8,8,4,0,0,2,6,9,1,0,4,1,4,0,7,9,2,8,8,6,2,1,5,0,7,8,4,2,4,5,1,6,7,0,9,0,8,7,0,0,0,6,9,9,2,8,2,1,2,0,6,6,0,4,1,8,3,7,1,8,0,6,5,3,5,5,6,7,2,5,2,5,3,2,5,6,7,5,3,2,8,6,1,2,9,1,0,4,2,4,8,7,7,6,1,8,2,5,8,2,9,7,6,5,1,5,7,9,5,9,8,4,7,0,3,5,6,2,2,2,6,2,9,3,4,8,6,0,0,3,4,1,5,8,7,2,2,9,8,0,5,3,4,9,8,9,6,5,0,2,2,6,2,9,1,7,4,8,7,8,8,2,0,2,7,3,4,2,0,9,2,2,2,2,4,5,3,3,9,8,5,6,2,6,4,7,6,6,9,1,4,9,0,5,5,6,2,8,4,2,5,0,3,9,1,2,7,5,7,7,1,0,2,8,4,0,2,7,9,9,8,0,6,6,3,6,5,8,2,5,4,8,8,9,2,6,4,8,8,0,2,5,4,5,6,6,1,0,1,7,2,9,6,7,0,2,6,6,4,0,7,6,5,5,9,0,4,2,9,0,9,9,4,5,6,8,1,5,0,6,5,2,6,5,3,0,5,3,7,1,8,2,9,4,1,2,7,0,3,3,6,9,3,1,3,7,8,5,1,7,8,6,0,9,0,4,0,7,0,8,6,6,7,1,1,4,9,6,5,5,8,3,4,3,4,3,4,7,6,9,3,3,8,5,7,8,1,7,1,1,3,8,6,4,5,5,8,7,3,6,7,8,1,2,3,0,1,4,5,8,7,6,8,7,1,2,6,6,0,3,4,8,9,1,3,9,0,9,5,6,2,0,0,9,9,3,9,3,6,1,0,3,1,0,2,9,1,6,1,6,1,5,2,8,8,1,3,8,4,3,7,9,0,9,9,0,4,2,3,1,7,4,7,3,3,6,3,9,4,8,0,4,5,7,5,9,3,1,4,9,3,1,4,0,5,2,9,7,6,3,4,7,5,7,4,8,1,1,9,3,5,6,7,0,9,1,1,0,1,3,7,7,5,1,7,2,1,0,0,8,0,3,1,5,5,9,0,2,4,8,5,3,0,9,0,6,6,9,2,0,3,7,6,7,1,9,2,2,0,3,3,2,2,9,0,9,4,3,3,4,6,7,6,8,5,1,4,2,2,1,4,4,7,7,3,7,9,3,9,3,7,5,1,7,0,3,4,4,3,6,6,1,9,9,1,0,4,0,3,3,7,5,1,1,1,7,3,5,4,7,1,9,1,8,5,5,0,4,6,4,4,9,0,2,6,3,6,5,5,1,2,8,1,6,2,2,8,8,2,4,4,6,2,5,7,5,9,1,6,3,3,3,0,3,9,1,0,7,2,2,5,3,8,3,7,4,2,1,8,2,1,4,0,8,8,3,5,0,8,6,5,7,3,9,1,7,7,1,5,0,9,6,8,2,8,8,7,4,7,8,2,6,5,6,9,9,5,9,9,5,7,4,4,9,0,6,6,1,7,5,8,3,4,4,1,3,7,5,2,2,3,9,7,0,9,6,8,3,4,0,8,0,0,5,3,5,5,9,8,4,9,1,7,5,4,1,7,3,8,1,8,8,3,9,9,9,4,4,6,9,7,4,8,6,7,6,2,6,5,5,1,6,5,8,2,7,6,5,8,4,8,3,5,8,8,4,5,3,1,4,2,7,7,5,6,8,7,9,0,0,2,9,0,9,5,1,7,0,2,8,3,5,2,9,7,1,6,3,4,4,5,6,2,1,2,9,6,4,0,4,3,5,2,3,1,1,7,6,0,0,6,6,5,1,0,1,2,4,1,2,0,0,6,5,9,7,5,5,8,5,1,2,7,6,1,7,8,5,8,3,8,2,9,2,0,4,1,9,7,4,8,4,4,2,3,6,0,8,0,0,7,1,9,3,0,4,5,7,6,1,8,9,3,2,3,4,9,2,2,9,2,7,9,6,5,0,1,9,8,7,5,1,8,7,2,1,2,7,2,6,7,5,0,7,9,8,1,2,5,5,4,7,0,9,5,8,9,0,4,5,5,6,3,5,7,9,2,1,2,2,1,0,3,3,3,4,6,6,9,7,4,9,9,2,3,5,6,3,0,2,5,4,9,4,7,8,0,2,4,9,0,1,1,4,1,9,5,2,1,2,3,8,2,8,1,5,3,0,9,1,1,4,0,7,9,0,7,3,8,6,0,2,5,1,5,2,2,7,4,2,9,9,5,8,1,8,0,7,2,4,7,1,6,2,5,9,1,6,6,8,5,4,5,1,3,3,3,1,2,3,9,4,8,0,4,9,4,7,0,7,9,1,1,9,1,5,3,2,6,7,3,4,3,0,2,8,2,4,4,1,8,6,0,4,1,4,2,6,3,6,3,9,5,4,8,0,0,0,4,4,8,0,0,2,6,7,0,4,9,6,2,4,8,2,0,1,7,9,2,8,9,6,4,7,6,6,9,7,5,8,3,1,8,3,2,7,1,3,1,4,2,5,1,7,0,2,9,6,9,2,3,4,8,8,9,6,2,7,6,6,8,4,4,0,3,2,3,2,6,0,9,2,7,5,2,4,9,6,0,3,5,7,9,9,6,4,6,9,2,5,6,5,0,4,9,3,6,8,1,8,3,6,0,9,0,0,3,2,3,8,0,9,2,9,3,4,5,9,5,8,8,9,7,0,6,9,5,3,6,5,3,4,9,4,0,6,0,3,4,0,2,1,6,6,5,4,4,3,7,5,5,8,9,0,0,4,5,6,3,2,8,8,2,2,5,0,5,4,5,2,5,5,6,4,0,5,6,4,4,8,2,4,6,5,1,5,1,8,7,5,4,7,1,1,9,6,2,1,8,4,4,3,9,6,5,8,2,5,3,3,7,5,4,3,8,8,5,6,9,0,9,4,1,1,3,0,3,1,5,0,9,5,2,6,1,7,9,3,7,8,0,0,2,9,7,4,1,2,0,7,6,6,5,1,4,7,9,3,9,4,2,5,9,0,2,9,8,9,6,9,5,9,4,6,9,9,5,5,6,5,7,6,1,2,1,8,6,5,6,1,9,6,7,3,3,7,8,6,2,3,6,2,5,6,1,2,5,2,1,6,3,2,0,8,6,2,8,6,9,2,2,2,1,0,3,2,7,4,8,8,9,2,1,8,6,5,4,3,6,4,8,0,2,2,9,6,7,8,0,7,0,5,7,6,5,6,1,5,1,4,4,6,3,2,0,4,6,9,2,7,9,0,6,8,2,1,2,0,7,3,8,8,3,7,7,8,1,4,2,3,3,5,6,2,8,2,3,6,0,8,9,6,3,2,0,8,0,6,8,2,2,2,4,6,8,0,1,2,2,4,8,2,6,1,1,7,7,1,8,5,8,9,6,3,8,1,4,0,9,1,8,3,9,0,3,6,7,3,6,7,2,2,2,0,8,8,8,3,2,1,5,1,3,7,5,5,6,0,0,3,7,2,7,9,8,3,9,4,0,0,4,1,5,2,9,7,0,0,2,8,7,8,3,0,7,6,6,7,0,9,4,4,4,7,4,5,6,0,1,3,4,5,5,6,4,1,7,2,5,4,3,7,0,9,0,6,9,7,9,3,9,6,1,2,2,5,7,1,4,2,9,8,9,4,6,7,1,5,4,3,5,7,8,4,6,8,7,8,8,6,1,4,4,4,5,8,1,2,3,1,4,5,9,3,5,7,1,9,8,4,9,2,2,5,2,8,4,7,1,6,0,5,0,4,9,2,2,1,2,4,2,4,7,0,1,4,1,2,1,4,7,8,0,5,7,3,4,5,5,1,0,5,0,0,8,0,1,9,0,8,6,9,9,6,0,3,3,0,2,7,6,3,4,7,8,7,0,8,1,0,8,1,7,5,4,5,0,1,1,9,3,0,7,1,4,1,2,2,3,3,9,0,8,6,6,3,9,3,8,3,3,9,5,2,9,4,2,5,7,8,6,9,0,5,0,7,6,4,3,1,0,0,6,3,8,3,5,1,9,8,3,4,3,8,9,3,4,1,5,9,6,1,3,1,8,5,4,3,4,7,5,4,6,4,9,5,5,6,9,7,8,1,0,3,8,2,9,3,0,9,7,1,6,4,6,5,1,4,3,8,4,0,7,0,0,7,0,7,3,6,0,4,1,1,2,3,7,3,5,9,9,8,4,3,4,5,2,2,5,1,6,1,0,5,0,7,0,2,7,0,5,6,2,3,5,2,6,6,0,1,2,7,6,4,8,4,8,3,0,8,4,0,7,6,1,1,8,3,0,1,3,0,5,2,7,9,3,2,0,5,4,2,7,4,6,2,8,6,5,4,0,3,6,0,3,6,7,4,5,3,2,8,6,5,1,0,5,7,0,6,5,8,7,4,8,8,2,2,5,6,9,8,1,5,7,9,3,6,7,8,9,7,6,6,9,7,4,2,2,0,5,7,5,0,5,9,6,8,3,4,4,0,8,6,9,7,3,5,0,2,0,1,4,1,0,2,0,6,7,2,3,5,8,5,0,2,0,0,7,2,4,5,2,2,5,6,3,2,6,5,1,3,4,1,0,5,5,9,2,4,0,1,9,0,2,7,4,2,1,6,2,4,8,4,3,9,1,4,0,3,5,9,9,8,9,5,3,5,3,9,4,5,9,0,9,4,4,0,7,0,4,6,9,1,2,0,9,1,4,0,9,3,8,7,0,0,1,2,6,4,5,6,0,0,1,6,2,3,7,4,2,8,8,0,2,1,0,9,2,7,6,4,5,7,9,3,1,0,6,5,7,9,2,2,9,5,5,2,4,9,8,8,7,2,7,5,8,4,6,1,0,1,2,6,4,8,3,6,9,9,9,8,9,2,2,5,6,9,5,9,6,8,8,1,5,9,2,0,5,6,0,0,1,0,1,6,5,5,2,5,6,3,7,5,6,7,8}; int main(){ int n; cin>>n; cout<<a[n]; return 0; }
第十二題
題目 https://ac.nowcoder.com/acm/contest/334/L
先用一個五維數組預處理出全部可能的得分,而後在求每一組數據的時候直接求和再/13 便可,注意四捨五入。
#include <iostream> #include <cstdio> #include <cstring> #include <cstdlib> inline void read(int &x) { x = 0;char ch = getchar(), c = ch; while(ch < '0' || ch > '9')c = ch, ch = getchar(); while(ch <= '9' && ch >= '0')x = x * 10 + ch - '0', ch = getchar(); if(c == '-')x = -x; } inline int min(int a,int b) { return a<b?a:b; } int ans[15][15][15][15][15]; int x,y,m,n,z,sum; inline void init() { for(int a = 1;a <= 13;++ a) for(int b = 1;b <= 13;++ b) for(int c = 1;c <= 13;++ c) for(int d = 1;d <= 13;++ d) for(int e = 1;e <= 13;++ e) { if(a<5 && b<5 && c<5 && d<5 && e<5 && a+b+c+d+e <= 10) ans[a][b][c][d][e] = 60; else if(a>10 && b>10 && c>10 && d>10 && e>10) ans[a][b][c][d][e] = 50; else if((a==b && b==c && c==d) || (a==b && b==c && c==e) || (a==b && b==d && e==d) || (a==e && e==c && c==d) || (e==b && b==c && c==d)) ans[a][b][c][d][e] = 40; else { x = min(a,10),y = min(b,10),m = min(c,10),n = min(d,10),z = min(e,10); if((x+y+m)%10 == 0 || (y+m+n)%10 == 0 || (m+n+z)%10 == 0 || (x+y+n)%10 == 0 || (x+y+z)%10 == 0 || (y+m+z)%10 == 0 || (y+n+z)%10 == 0 || (x+n+z)%10 == 0 || (x+m+n)%10 == 0 || (x+m+z)%10 == 0) { sum = x+y+m+n+z; if(sum%10 == 0) ans[a][b][c][d][e] = 30; else if(sum%10 < 7) ans[a][b][c][d][e] = sum%10; else ans[a][b][c][d][e] = (sum%10)*2; } } } } int main() { init(); int t; read(t); for(;t;--t) { sum = 0; read(x),read(y),read(m),read(n); for(register int i = 1;i <= 13;++ i) sum += ans[x][y][m][n][i]; sum = (sum/13.0)+0.5; printf("%d\n",sum); } return 0; }
第十三題
題目 https://ac.nowcoder.com/acm/contest/334/M