Cod sursa(job #1358889)

Utilizator madalina.balaceanuBalaceanu Madalina madalina.balaceanu Data 24 februarie 2015 20:24:38
Problema Convertor Scor 50
Compilator java Status done
Runda rosedu_cdl_2015 Marime 2 kb
import java.io.*;
import java.security.AllPermission;
import java.util.Scanner;
import java.util.StringTokenizer;

public class Main {
	
    static String[] all = new String[10000];
	int i=1;
	static int index=0;
	static int  br=0;
	
	boolean separare( StringTokenizer st ,String s,String buff,Scanner in,int i){
	 boolean stay =true;
	 if(br == 0)
		 st = new StringTokenizer(buff, "{[]\n\t:,");
	 else
	  st = new StringTokenizer(buff, "{}[]\n\t:,");
		while(stay){
		try {
    		s=st.nextToken();
    		if(s.replace('"', ' ').trim().length() != 0){
        	all[index]=s.replace('"', ' ').trim();
    		index++;
    		if(s.endsWith("}") && br == 0){
    			br=index;
			//	System.out.println(all+"bou");

    			if(all[index-1].length() == 1){
    				index--;
    				br--;
    			}
    				else{
    			all[index-1]=all[index-1].replace('}', ' ').trim();
    				}
    			//System.out.println(" tata "+all[index-1]);
    		}
		}
        	
		} catch (Exception e) {
			stay=false;;
	
	}
		}
	return false;	
	}

	 	
	public static void main(String[] args) throws IOException{
		String buff;
        Scanner in = new Scanner(new FileInputStream("convertor.in"));
		PrintWriter out = new PrintWriter("convertor.out");
		buff = in.nextLine();
        StringTokenizer st = new StringTokenizer(buff, ":,");
        String s = null;
        int i=1;
       Main p = new Main();
      
       while(true){
    	
    		   p.separare(st, s, buff, in, i);
    	   try{
    		   buff=in.nextLine();
    	   }catch(Exception e){
    		   break;
    	   }
       }
        
    for (i=0;i<br;i=i+2){
    	out.write(all[i]+",");
    }
    
    out.write("\n");
    
    for (i=1;i<index;i+=2){
    	if(i % br != br-1){
    		out.write(all[i]+",");
    	}
    	else
    	{
    		out.write(all[i]+","+"\n");
    	}
    }
    
  /*  for(i=0;i<index;i++){
    	System.out.println(i +" "+ all[i]);
    }
    */
	in.close();
	out.close();
    }	
  
        
 

	}