2016年1月10日 星期日

NPSC2015-J2G-morse 國中決 G.光通訊

/*
npsc2015-j2g-morse
sol-1 every char check
*/

#include <iostream>
#include <sstream>
#include <iomanip>
#include <cstring>
#include <cstdio>
#include <vector>
#include <map>
#include <algorithm>

using namespace std;
const int MaxN = 1000;
int mos[]={12,2111,2121,211,1,  1121,221,1111,11,1222,  212,1211,22,21,222,   1221,2212,121,111,2,  112,1112,122,2112,2122, 2211};
//A  B    C    D   E    F   G    H   I   J      K   L   M  N   O      P   Q     R  S   T    U   V    W   X   Y     Z
char tbl[81];  // A=1+2*3=4 , B=2+1*3+1*9+1*27=41 , J=1+2*3+2*9+2*27;
int main(void)
{
int i,j,k , n;
int p[]={1,3,9,27};
int v,d,e,f;
string s;
// gen tbl
for(i=0; i<26; ++i)
{
k=mos[i];
f=v=0;
e=1000;
while(k>0)
{
j=k/e;
k%=e;
e/=10;
if(j>0) v+=(j*p[f++]);

}
tbl[v] = char(i+'A');
// cout <<char(i+'A') << v << endl;
}


while(cin >>n)  //cin >> n;
{
cin >> s;
v=d=e=f=0;
for(j=0; j<n; ++j)
{
if( s[j] == '.' )
{
++d;
if(e>0)
{
v+=p[f];
if(e==3) v+=p[f];
e=0;
}

}
else // ==
{
++e;
if(d==0) continue;
if(d==1) ++f;
else
{
cout << tbl[v]; //cout << v << " ";
if(d==7) cout << " ";
v=0;
f=0;
}
d=0;
}
}
// last char
if(d==1) ++f;
v+=p[f];
if(e==3) v+=p[f];
cout << tbl[v]<< endl;  // << v << endl;

}

return 0;
}
/*
69
===.=...=.===.===.=...=.=.=...===.=.===.=.......===.===.=...===.===.=
57
=.===...===.=.=.=...===.=.===.=...===.=.=...=...=.=.===.=
53
===.===.=...=.=.=.=...=.=...=.===.===.===...===.=.===
55
=.===.=.=...===.===...===.=...===.===.===...=.===.===.=
47
===.===.=.===...=.===.=...=.=.=...===...=.=.===
65
=.=.=.===...=.===.===...===.=.=.===...===.=.===.===...===.===.=.=

--------out
NPSC GG
ABCDEF
GHIJK
LMNOP
QRSTU
VWXYZ

*/

Related Posts:

  • Z2B VB筆試參考練習卷下載 一、單選題:(每3分,共12題) 36% 01(  B3   )執行下列程式(一)結果輸出幾個G? 02(  C75   )執行下列程式(二)結果輸出S=? 03(  B6   &n… Read More
  • 0125練習 uva114700125資料夾 UVA 11470題目 題意: N x N 方陣,最多10x10,算每一圈的數字和 vb版 解題參考,輸入 in.txt  輸出out.txt https://uva.onlinejudge.org/external/114/11470.pdf … Read More
  • S3B期末練習http://qe.fisp.com.tw 老師:jafachen@yahoo.com.tw 密碼:學號… Read More
  • E2B計、程(段一前小考卷)計概的小考卷,下載如下 寒輔6-1下載  小考6-3下載 小考6-4下載 小考6-5-(條件判斷)下載 小考6-5-(For單迴圈)下載 小考6-5-(For雙迴圈)下載 小考(段考範圍)下載  程式的模卷下載 … Read More
  • 資2孝段1筆試範例 (<<下載)… Read More

0 意見:

張貼留言