?? gee1005.java
字號:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.HashSet;
public class GEE1005 implements ActionListener{
private workFrame myFrame;
public GEE1005(){
myFrame = new workFrame();
myFrame.getInButton().addActionListener(this);
myFrame.getClearButton().addActionListener(this);
}
public static void main(String[] argv){
GEE1005 ge = new GEE1005();
}
/* (non-Javadoc)
* @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
*/
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
if(arg0.getSource() == myFrame.getInButton()){
String str = myFrame.getInTextArea().getText();
int rows = myFrame.getInTextArea().getLineCount();
int array[][] = new int[rows-1][2];
for(int i=0;i<rows-1;i++){
int index = 0;
String s = new String();
while(str.charAt(index)!= '\n'){
s = s+str.charAt(index);
index ++;
}
str = ""+str.substring(index+1);
str = ""+str.substring(0);
//把String s轉化成String 數組array[i]
int arrayindex =0;
String sub = new String();
if(s.length()==0) continue;
s = s+' ';
for(int m=0;m<s.length() && arrayindex<2;m++){
if(s.charAt(m)!=' ')
sub = sub+s.charAt(m);
else{
array[i][arrayindex] = Integer.parseInt(sub);
sub = "";
arrayindex++;
}
}
}
int i =0;
while(i<rows-2){
int cityNum=0,loadNum=0,loadNeed=0;
HashSet hSet = new HashSet();
if(array[i][0]!=0){ //判斷是否結束
cityNum = array[i][0];
loadNum = array[i][1];
}
else
break;
for(int k=i+1;k<=i+loadNum;k++){ //城市加入集合HashSet
if(!(hSet.contains(new Integer(array[k][0]))||
hSet.contains(new Integer(array[k][1])))){
hSet.add(new Integer(array[k][0]));
hSet.add(new Integer(array[k][1]));
loadNeed++;
}
else{
if(hSet.size()<cityNum){
hSet.add(new Integer(array[k][0]));
hSet.add(new Integer(array[k][1]));
}
else
break;
}
}
if(hSet.size()<cityNum){
loadNeed +=cityNum-hSet.size(); //加入剩下的孤立城市
}
loadNeed-=1; //集合開始可以包括一個元素
myFrame.getOutTextArea().append(""+loadNeed+'\n');
i = i+loadNum+1;
}
}
else if(arg0.getSource() == myFrame.getClearButton()){
myFrame.getInTextArea().setText("");
myFrame.getOutTextArea().setText("");
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -