设为首页 加入收藏

TOP

UVa oj AOAPC Volume 1. Elementary Problem Solving String (二)
2014-11-23 23:11:47 来源: 作者: 【 】 浏览:12
Tags:UVa AOAPC Volume Elementary Problem Solving String
e;
65 }
66 bool f8 (int i,int j)
67 { int k=0,flage;
68 flage=(m-i)<(n-j) (m-i):(n-j);
69 if (flage 70 for (;k 71 if ( a[i][j] != b[k] ) return false;
72 }
73 return true;
74 }
75 void bigtosmalljz ()
76 { int i,j;
77 for (i=0;i 78 for (j=0;j 79 if ('A'<=a[i][j] && a[i][j]<='Z')
80 { a[i][j]=a[i][j]-'A'+'a'; }
81 }
82 }
83 }
84 void bigtosmallmb()
85 { int i;
86 for (i=0;i 87 if ('A'<=b[i] && b[i]<='Z')
88 { b[i]=b[i]-'A'+'a'; }
89 }
90 }
91 void cl ()
92 { int i,j;
93 for (i=0;i 94 for (j=0;j 95 if (a[i][j] == b[0]){
96 if( f1(i,j) || f2(i,j) || f3(i,j) || f4(i,j) || f5(i,j) || f6(i,j) || f7(i,j) || f8(i,j) )
97 { printf("%d %d\n",i+1,j+1); return; }
98 }
99 }
100 }
101 }
102 int main()
103 { int i,j,k;
104 scanf("%d",&T);
105 for (i=0;i 106 scanf("%d %d",&m,&n);
107 getchar();
108 for (j=0;j 109 gets(a[j]);
110 }
111 bigtosmalljz();
112 scanf("%d",&k);
113 getchar();
114 for (j=0;j 115 gets(b);
116 lenb=strlen(b);
117 bigtosmallmb();
118 cl();
119 }
120 if (i 121 { printf("\n"); }
122 }
123 return 0;
124 }
125 心得体会:代码敲多了……不知道能不能简化,还有,对于多组测试数据,中间要输出一个换行,最后一个则不要(我经常吃这个亏)


第三题:10361 - Automatic Poetry
大致题意:把两个<>里的字符串互换即可……
题目分析:找“<”“>”,记录下位置,处理就是了……
代码:
1 #include
2 #include
3 #include
4 const int maxlen=120;
5 int p1,p2,p3,p4,p5;
6 char a[maxlen],s1[maxlen],s2[maxlen],s3[maxlen],s4[maxlen],b[maxlen];
7 void findp ()
8 { //找《》《》.在那///////////////////////////////////////
9 int i;
10 for (i=0;;i++){
11 if (a[i]=='<')
12 { p1=i; break; }
13 }
14 for (i=i+1;;i++){
15 if (a[i]=='>')
16 { p2=i; break; }
17 }
18 for(i=i+1;;i++){
19 if (a[i]=='<')
20 { p3=i; break; }
21 }
22 for(i=i+1;;i++){
23 if (a[i]=='>')
24 { p4=i; break; }
25 }
26 for (i=0;;i++){
27 if (b[i]=='.')
28 { p5=i; break; }
29 }
30 }
31 void getstr ()
32 { //得到四个字符创串
33 int i,j;
34 for (i=p1+1,j=0;i 35 s1[j]=a[i];
36 } s1[j]='\0';
37 for (i=p2+1,j=0;a[i]!=' ' && a[i]!='\0';i++,j++){
38 s2[j]=a[i];
39 } s2[j]='\0';
40 for (i=p3+1,j=0;i 41 s3[j]=a[i];
42 } s3[j]='\0';
43 for (i=p4+1,j=0;a[i]!='\0' && a[i]!=' ';j++,i++){
44 s4[j]=a[i];
45 } s4[j]='\0';
46 }
47 void zuheforb ()
48 { int i,j;
49 for (i=p3+1;i 50 b[p5]=a[i];
51 }
52 for (i=p2+1;i 53 b[p5]=a[i];
54 }
55 for (i=p1+1;i 56 b[p5]=a[i];
57 }
58 for (i=p4+1;a[i]!='\0';i++,p5++){
59 b[p5]=a[i];
60 } b[p5]='\0';
61 }
62 void shuchua ()
63 { int i,j;
64 for (i=0;a[i]!='\0';i++){
65 if (a[i]!='<' && a[i]!='>')
66 { printf("%c",a[i]); }
67 } printf("\n");
68 }
69 int main()
70 {
71 int i,t;
72 scanf("%d",&t);
73 getchar();
74 for (i=0;i 75 gets(a);
76 gets(b);
77 findp();
78 getstr();
79 zuheforb();
80 shuchua();
81 puts(b);
82 }
83 ////////////////////////////////
84 //system("pause");
85 return 0;
86 }
87 心得体会

首页 上一页 1 2 3 4 5 6 下一页 尾页 2/6/6
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇调试程序 下一篇有效的使用和设计COM智能指针――..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: