์ตœ๋Œ€ 1 ๋ถ„ ์†Œ์š”

๐Ÿ“ [S3_3273] ๋‘ ์ˆ˜์˜ ํ•ฉ

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.StringTokenizer;

public class Main {
    static int N,X,res;
    static int[] arr;
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st;

        // input
        N = Integer.parseInt(br.readLine());
        ArrayList<Integer> list = new ArrayList<>();
        st=  new StringTokenizer(br.readLine()," ");
        for(int i=0; i<N; i++){
            int input = Integer.parseInt(st.nextToken());
            list.add(input);
        }
        X = Integer.parseInt(br.readLine());

        // listMinus ์—๋Š” X์—์„œ ๊ฐ’์„ ๋บ€ ๊ฐ’์ด ์ €์žฅ๋œ๋‹ค.
        HashMap<Integer, Integer> map = new HashMap<>();
        for(int i=0; i<N; i++){
            int minus = X-list.get(i);
            
            // 0๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์œผ๋ฉด ํ†ต๊ณผ
            if(minus<=0) continue;
            map.put(minus,minus);
        }

        // list ๋Œ๋ฉด์„œ ์ฐพ๊ธฐ
        for(int i=0; i<N; i++){
            if(map.containsKey(list.get(i))){
                res++;
            }
        }
        System.out.println(res/2);
    }
}

๐Ÿค” ๋‚˜์˜ ์ƒ๊ฐ

์ด ๋ฌธ์ œ๋Š” ๊ฒฐ๊ตญ ๋งŽ์€ ๋ฐ์ดํ„ฐ๋ฅผ ์–ด๋–ป๊ฒŒ ๋น ๋ฅด๊ฒŒ ์ ‘๊ทผํ•˜๋ƒ ์ธ ๊ฒƒ ๊ฐ™๋‹ค.
๊ทธ๋ž˜์„œ list๋กœ ๊ฐ’๋“ค์„ ๋ฐ›์•„์ฃผ๊ณ  ๊ณ„์‚ฐํ•œ ๋’ค ์ฐพ๋Š” ๊ฒƒ์€ HashMap์„ ํ†ตํ•ด ์ฐพ์•„์ฃผ์—ˆ๋‹ค.

  1. list๋กœ ๋ฐฐ์—ด์„ ์ž…๋ ฅ ๋ฐ›๋Š”๋‹ค. ( HashMap์œผ๋กœ ์•ˆ๋ฐ›๋Š” ์ด์œ ๋Š” HashMap์œผ๋กœ ๋ฐ›์œผ๋ฉด ์ž๋™์ •๋ ฌ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ˆœ์„œ๊ฐ€ ์ค‘์š”ํ•œ ๋ฌธ์ œ๋ผ์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค. )
  2. HashMap์— (X-llst๊ฐ’)์„ ์ €์žฅํ•œ๋‹ค. ์—ฌ๊ธฐ์„œ ๋งŒ์•ฝ 0๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์œผ๋ฉด ์ €์žฅํ•˜์ง€ ์•Š๋Š”๋‹ค. 2๊ฐœ๋กœ ๋งŒ๋“ค์–ด์งˆ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ
  3. list๋ฅผ ๋‹ค์‹œ ๋Œ๋ฉด์„œ map ๊ฐ’์ด ์žˆ๋Š”์ง€ ์ฒดํฌ -> ์žˆ์œผ๋ฉด ์นด์šดํŒ… ํ•ด์ค€๋‹ค.
  4. ์นด์šดํŒ…ํ•œ ๊ฐ’์„ ์ถœ๋ ฅํ•ด์ค€๋‹ค.

ํƒœ๊ทธ: , , ,

์นดํ…Œ๊ณ ๋ฆฌ:

์—…๋ฐ์ดํŠธ: