usaco1.2 namenum 2008.11.5
来源:互联网 发布:163邮箱smtp ssl 端口 编辑:程序博客网 时间:2024/06/05 20:46
usaco1.2 namenum 2008.11.5
{Tips:
1.对字典序的理解错误:eg:ABC ABU ACE 第二位是B时,第三位从小到大都排完后,第二位才排C。我理解错了。我以为是前面的字符串的每一位都大于后面字符串的相应位,这种理解是错误的。要注意读题的准确
2.用了一个滚动数组,循环来纪录每次筛选的字符串。
3.要求找出所有符合条件的结果,我只找出了一组就跳出循环了。
4.存储每个数字代表哪个字母时,借鉴了结题报告,又有所改进。
5.从第一位开始筛选,如果不符合相应的条件,直接筛掉,不再进行接下来的处理
6.文件名打错了,‘namenum.out’我打成了‘namenum.out;’多了个分号,一直出错 }
{ID: PROG: namenumLANG: PASCAL} program kakashi; const x:array[2..9,1..3]of char=(('A','B','C'),('D','E','F'),('G','H','I'),('J', 'K','L'),('M','N','O'),('P','R','S'),('T','U','V'),('W','X','Y')); y:array['0'..'9']of 0..9=(0,1,2,3,4,5,6,7,8,9); type arr=array[1..12]of 0..9; var f1,f2,ff:text; r,i,j,n,la,lb,k,mm,m:longint; t:arr; l:integer; flag,sign:boolean; ch,answer,p:string; z:array[0..1,1..5000]of string; procedure deal(dep,m:longint); var l1,l2,o:longint; begin if (dep=l+1) then begin if m=0 then writeln(f2,'NONE') else for o:=1 to m do writeln(f2,z[k,o]); exit; end; mm:=0; for r:=1 to m do if (z[k,r,dep]in[x[t[dep],1],x[t[dep],2],x[t[dep],3]]) then begin inc(mm); z[1-k,mm]:=z[k,r]; end; k:=1-k; deal(dep+1,mm); end; begin assign(f1,'namenum.in'); reset(f1); assign(f2,'namenum.out'); rewrite(f2); assign(ff,'dict.txt'); reset(ff); readln(f1,p); l:=length(p); for i:=1 to l do t[i]:=y[p[i]]; n:=0; repeat readln(ff,ch); flag:=true; if (length(ch)=l) then if (ch[1] in[x[t[1],1],x[t[1],2],x[t[1],3]])then begin inc(n); z[1,n]:=ch; end; until((eof(ff))or(ch[1]>x[t[1],3])); k:=1; deal(2,n); close(f1); close(f2); close(ff); end.
0 0
- usaco1.2 namenum 2008.11.5
- USACO1.2.3 Name That Number (namenum)
- USACO1.2.3 Name That Number (namenum)
- usaco1.2 transform 2008.11.5
- usaco1.2 palsquare 2008.11.5
- namenum-section1.2
- namenum
- usaco1.3 calfflac 2008.11.5
- usaco1.3 crypt1 2008.11.5
- USACO-Section1.2 namenum[字符处理]
- USACO1.5:sprime
- USACO1.5:pprime
- usaco1.5 pprime
- USACO1.2 Milking Cows
- USACO1.2--Milking Cows
- USACO1.2:dualpal
- USACO1.2:milk2
- USACO namenum
- 轻量级分布式 RPC 框架
- libevent(一):简单使用
- usaco1.2 transform 2008.11.5
- bootstraps4+flexbox
- poj3666Making the Grade【dp离散化】
- usaco1.2 namenum 2008.11.5
- Android实现推送方式解决方案
- word2vec词向量训练及中文文本相似度计算
- HDU 1251 统计难题(字典树)
- usaco1.2 palsquare 2008.11.5
- usaco1.3 calfflac 2008.11.5
- 【POI2005】【BZOJ1532】Kos-Dicing
- U盘容量显示错误修改
- Codeforces Round #341 (Div. 2)D. Rat Kwesh and Cheese