双指针
public class Main{
public static void main(String[] args) { Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
int i=0;
int j=0;
boolean flag = false;
char ch;
List<String> arr = new ArrayList<>();
while(j<str.length()){
ch = str.charAt(j);
if(flag == false){
if(ch == '\"'){
flag = true;
j++;
continue;
}
else if(j==str.length()-1){
StringBuffer sb = new StringBuffer(str.substring(i,j));
sb.append(str.charAt(j));
arr.add(sb.toString());
break;
}
else if(ch == ' ' && j>i){
arr.add(str.substring(i,j));
//System.out.println(str.substring(i,j));
i=j+1;
j++;
}
else if(ch == ' ' && j==i){
i++;
j++;
}
else{
j++;
}
}
else{
if(ch!='\"'){
j++;
}
else{
arr.add(str.substring(i+1,j));
//System.out.println(str.substring(i+1,j));
i=j+1;
j++;
flag = false;
}
}
}
System.out.println(arr.size());
for(int k=0;k<arr.size();k++){
System.out.println(arr.get(k));
}
}
}