生活随笔
收集整理的這篇文章主要介紹了
杭电oj2072,2091字符串java实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2072題目鏈接
思路:輸入String,使用字符串分割,分割成小的字符數組,使用java的List儲存不同單詞,每次比較若全部不同則存入,返回List長度注意:不要用數組,數組長度無法改變并且數組處理空字符串和回車會很麻煩,附上代碼
import java
.util
.ArrayList
;
import java
.util
.List
;
import java
.util
.Scanner
;public class Main {public static void main(String
[]args
){ Scanner sc
=new Scanner(System
.in
); while(sc
.hasNext()){String a
=sc
.nextLine();boolean bre
= false;String b
[]=a
.split(" ");for(int i
=0;i
<b
.length
;i
++){if(b
[i
].contains("#"))bre
=true;}if(bre
)break;List list
=new ArrayList();for(int i
=0;i
<b
.length
;i
++){if(!list
.contains(b
[i
]))list
.add(b
[i
]);}if(list
.contains("")){System
.out
.println(list
.size()-1);}else
System
.out
.println(list
.size());}}}
2091:題目鏈接
注意點:1:三角形的右側沒有多余的空格
2:相鄰三角形有空行,輸出第一個三角形沒有空行,輸出第二個以及以后才有空行。一個一個測試看不出可以復制多組測試數據直接粘貼進去測試。
代碼如下:
import java
.util
.Scanner
;
public class Main {public static void main(String
[]args
){ Scanner sc
=new Scanner(System
.in
); int u
=1;while(sc
.hasNext()){u
++;String a
=sc
.nextLine();String b
[]=a
.split(" ");char c
=b
[0].charAt(0);if(c
=='@') {break;} int d
=Integer
.parseInt(b
[1]);if(u
>2){System
.out
.println();}for(int i
=0;i
<d
;i
++){if(i
==d
-1){for(int j
=0;j
<2*d
-1;j
++){System
.out
.print(c
);}}else {for(int j
=0;j
<=(2*d
-1)/2+i
;j
++)if(i
==Math
.abs(j
-(2*d
-1)/2)){System
.out
.print(c
);}else System
.out
.print(" ");}System
.out
.println();}}} }
總結
以上是生活随笔為你收集整理的杭电oj2072,2091字符串java实现的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。