• ํŒจ์ŠคํŠธ์บ ํผ์Šค ์ฑŒ๋ฆฐ์ง€ 22์ผ์ฐจ

    2021. 11. 22.

    by. JuneBee

    728x90
    ๋ฐ˜์‘ํ˜•

    ์‹œ์ฒญ ๊ฐ•์˜: ์‹œ๊ฐ„ ๋ณต์žก๋„
    ์‹œ์ฒญ ๋‚ ์งœ : 11/22/2021

     

    ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” ์•„๋ฌด๋ฆฌ ๋งŽ์ด ๋“ค์–ด๋„ ์ดํ•ด๋˜์ง€ ์•Š๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ์ด๋ก ์œผ๋กœ ๋“ค์—ˆ์„ ๋•Œ ์ดํ•ด๋„ ๋˜๊ณ , ์‹œํ—˜์ด๋‚˜ ๋ณต์žก๋„ ๊ณ„์‚ฐ ๋ฌธ์ œ๋ฅผ ์คฌ์„ ๋•Œ๋„ ํ’€ ์ˆ˜ ์žˆ๋Š”๋ฐ ๋ง‰์ƒ ์ฝ”๋“œ๋ฅผ ์งœ๋ ค๊ณ  ํ•˜๋ฉด ํ•ญ์ƒ ๋‚ด ๋ฐœ๋ชฉ์„ ์žก๋Š” ๋ถ€๋ถ„์ด๋‹ค. ํŠนํžˆ ๋ฐฑ์ค€ ๋ฌธ์ œ๋“ค์€ ๋Œ€๋ถ€๋ถ„ ๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ ๊ฑฐ๋‚˜ ์Šคํƒ ์˜ค๋ฒ„ํ”Œ๋กœ์šฐ์ธ๋ฐ ์ด๋ ‡๊ฒŒ ๋œจ๋ฉด ์ˆ˜์ •์ด๋ผ๋„ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์•„์˜ˆ ํ‹€๋ฆฌ๋‹ค๊ณ ๋งŒ ๋‚˜์˜ค๋ฉด ์ฃฝ์„ ๋ง›์ด๋‹ค...

    ๊ทธ๋Ÿฐ ์˜๋ฏธ์—์„œ ์˜ค๋Š˜ ๊ฐ•์˜๋Š” ๊ฝค ์ค‘์š”ํ•œ ๊ฒƒ ๊ฐ™๋‹ค. ^^,,, ๊ฐ•์˜ ๋‚ด์šฉ์ด ์ข€ ์งง์•„์„œ ์‹œ๊ฐ„ ๋‹จ์ถ• ๋ฐฉ๋ฒ•๊ณผ BufferedReader ์‚ฌ์šฉ ๋ฐฉ๋ฒ•์„ ์ •๋ฆฌํ•ด๋‹ค.

     

    Big O Notation

    ์ž…๋ ฅ์˜ ํฌ๊ธฐ N์— ๋Œ€ํ•ด์„œ ์‹œ๊ฐ„์ด ์–ผ๋งˆ๋‚˜ ๊ฑธ๋ฆด์ง€ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐฉ๋ฒ•. ์ตœ์•…์˜ ๊ฒฝ์šฐ๋ฅผ ๊ตฌํ•œ๋‹ค.

    1๋ถ€ํ„ฐ N๊นŒ์ง€์˜ ์ˆซ์ž์˜ ํ•ฉ์„ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ๋„, ์ฝ”๋“œ์— ๋”ฐ๋ผ ์‹œ๊ฐ„ ๋ณต์žก๋„๊ฐ€ ํฌ๊ฒŒ ์ฐจ์ด ๋‚œ๋‹ค.

    1. O(N)
    int sum = 0;
    for (int i =1; i<= N ; i++) {sum+=i;}
    
    1. O(N^2)
    int sum = 0; 
    for(int i =1; i<=N; i++){ for (int j =1; j<=N; j++) {if (i==j}sum+= j;}
    
    1. O (1)
    int sum = 0; sum = N * (N+1) /2
    

    ์ž…๋ ฅ์˜ ํฌ๊ธฐ์— ๋”ฐ๋ฅธ ์‹œ๊ฐ„ ๋ณต์žก๋„

    1์ดˆ๊ฐ€ ๊ฑธ๋ฆฌ๋Š” ์ž…๋ ฅ์˜ ํฌ๊ธฐ:

    O(1), O(lgN), O(N): 1์–ต, O(NlgN): 5๋ฐฑ๋งŒ, O(N^2): 1๋งŒ, O(N^3): 500, O(2^N) : 20, O(N!) 10

    ์ด๋ฅผ ์—ผ๋‘์— ๋‘๊ณ  N์˜ ํฌ๊ธฐ๋ฅผ ๋ณด๊ณ  ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ๋”ฐ์ ธ๋ด์•ผ ํ•œ๋‹ค. ๋˜ํ•œ, ํŒฉํ† ๋ฆฌ์–ผ์€ ์ตœ์•…์˜ ๋ฐฉ์‹์ด๊ธฐ ๋•Œ๋ฌธ์— ๊ธฐํ”ผํ•˜๋Š” ๊ฒŒ ์ข‹๊ณ  ๋ณดํ†ต ์šฐ๋ฆฌ๊ฐ€ ๋ฌธ์ œ๋ฅผ ํ’€ ๋•Œ O(N^2)์œผ๋กœ ํ’€๊ฒŒ ๋˜๋Š”๋ฐ, O(NlgN)์œผ๋กœ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ๋งค์šฐ ํšจ์œจ์ ์œผ๋กœ ์ง  ํ”„๋กœ๊ทธ๋žจ์ด๋‹ค.

    ๋ฉ”๋ชจ๋ฆฌ

    ๋ฌธ์ œ ์ œํ•œ์ด ๋ณดํ†ต 1์ดˆ/ 512MB์ด๋‹ค

    ๋‚˜๋ฅผ ์œ„ํ•œ ํŒ...

    <aside> ๐Ÿคฆ๐Ÿป‍โ™€๏ธ ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๊ฐ€ ํฌ๋ฉด ์‹œ๊ฐ„ ์ดˆ๊ณผ๋ฅผ ๋ฐ›๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค ๋ถˆํ•„์š”ํ•œ ๊ณต๊ฐ„์ด ์—†์œผ๋ฉด ๋ฉ”๋ชจ๋ฆฌ๋Š” ์•Œ์•„์„œ ์ง€์ผœ์ง„๋‹ค

    </aside>

    ์ž…์ถœ๋ ฅ

    1. Scanner
      • ์‚ฌ์šฉ์ด ํŽธํ•˜๋‹ค (๋‚˜ํ•œํ…Œ..)
      • ์ž…๋ ฅ์ด ๋งŽ์€ ๊ฒฝ์šฐ์— ์†๋„๊ฐ€ ๋А๋ ค์„œ BufferedReader๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค
    2. BufferedReader
      • BufferedReader br = new BufferedReader ( new InputStreamReader (System.in));
      • ์ถœ๋ ฅ์ด ๋งŽ์€ ๊ฒฝ์šฐ์—๋Š” StringBuilder๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•œ ๋ฌธ์ž์—ด๋กœ ๋งŒ๋“ค์–ด์„œ ์ถœ๋ ฅ์„ ํ•œ ๋ฒˆ๋งŒ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ Buffered Writer์„ ์‚ฌ์šฉํ•œ๋‹ค
      BufferedReader ์‚ฌ์šฉ ๋ฐฉ๋ฒ•
      1. Input ์ด int ์ธ ๊ฒฝ์šฐ: Integer.parseInt()๋กœ ํƒ€์ž… ๋ณ€ํ™˜
      2. Input ์ด int ๋ฐฐ์—ด์˜ ์š”์†Œ๋“ค์ผ ๋•Œ: StringTokenizer์™€ split()์„ ์‚ฌ์šฉํ•œ๋‹ค
        import java.io.BuffredReader;
        import java.io.IOException;
        import java.io.InputStreamReader;
        import java.util.StringTokenizer;
        
        public class Main{
        public static void main(String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int N = Integer.parseInt(br.readLine()); //ํ•œ๊ฐœ์˜ ์ƒ์ˆ˜ ํ˜•๋ณ€ํ™˜
        int[] arr = new int[N] ; //๋ฐฐ์—ด input์„ ๋‹ด์„ ๋ฐฐ์—ด ์ƒ์„ฑ
        
        StringTokenizer st = new  StringTokenizer(br.readLine());
        for(int i =0; i<N; i++){
        arr[i] = Integer.parseInt(st.nextToken());} //ํ† ํฌ๋‚˜์ด์ €๋ฅผ ๋‹ค์‹œ ์ˆซ์ž๋กœ parse
        br.close();
        }
        
        }
        โ€‹

    BufferedWriter ์‚ฌ์šฉ ๋ฐฉ๋ฒ•

    import java.io.BufferedWritier;
    import java.io.IOException;
    import java.io.OutputStreamWriter;
    
    public class Main{
    public static void main(String[] args) throws IOException{
    BuffredWriter bw = new BufferedWritier (new OutputStreamWriter(System.out));
    bw.write("Java");
    bw.flush();
    br.close();
    }
    }
    

    StringBuilder ์‚ฌ์šฉ ๋ฐฉ๋ฒ•

    StringBuilder sb = new StringBuilder("Hey");
    sb.append("add elements");
    sb.setSize(sb.length()-1); //์ด๋ ‡๊ฒŒํ•˜๋ฉด ๋ฐ”๋กœ ์ „๊นŒ์ง€ ์ž˜๋ผ๋‚ด์„œ ์ฝค๋งˆ๋ฅผ ์—†์• ๋ฒ„๋ฆด์ˆ˜์žˆ๋‹ค
    System.out.print(sb);
    int indexStart = 0, indexEnds = 3;
    sb.deleted(0,3);
    

     


    ํŒจ์ŠคํŠธ์บ ํผ์Šค ํ™˜๊ธ‰ ์ฑŒ๋ฆฐ์ง€ ๋ฐ”๋กœ๊ฐ€๊ธฐ๐Ÿ‘‰ https://bit.ly/3FVdhDa

     

    ์ˆ˜๊ฐ•๋ฃŒ 100% ํ™˜๊ธ‰ ์ฑŒ๋ฆฐ์ง€ | ํŒจ์ŠคํŠธ์บ ํผ์Šค

    ๋”ฑ 5์ผ๊ฐ„ ์ง„ํ–‰๋˜๋Š” ํ™˜๊ธ‰์ฑŒ๋ฆฐ์ง€๋กœ ์ˆ˜๊ฐ•๋ฃŒ 100% ํ™˜๊ธ‰๋ฐ›์œผ์„ธ์š”! ๋” ๋Šฆ๊ธฐ์ „์— ์ž๊ธฐ๊ณ„๋ฐœ ๋ง‰์ฐจ ํƒ‘์Šน!

    fastcampus.co.kr

    ๋ณธ ํฌ์ŠคํŒ…์€ ํŒจ์ŠคํŠธ์บ ํผ์Šค ํ™˜๊ธ‰ ์ฑŒ๋ฆฐ์ง€ ์ฐธ์—ฌ๋ฅผ ์œ„ํ•ด ์ž‘์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

    728x90
    ๋ฐ˜์‘ํ˜•

    ๋Œ“๊ธ€