์•Œ๊ณ ๋ฆฌ์ฆ˜

๊ทธ๋ฆฌ๋”” ๋ฌธ์ œํ’€์ด - ๋ณผ๋ง๊ณต ์„ ํƒํ•˜๊ธฐ

ghtis1798 2021. 6. 13. 19:28

๐Ÿ”ธ ๋ณผ๋ง๊ณต ๊ณ ๋ฅด๊ธฐ

A,B ๋‘ ์‚ฌ๋žŒ์ด ๋ณผ๋ง๊ณต์„ ๊ณ ๋ฅผ ์ˆ˜ ์žˆ๋Š” ์กฐํ•ฉ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค.

  1. ๋ณผ๋ง๊ณต ์ˆ˜๋Š” N์œผ๋กœ ์ตœ๋Œ€ 1,000
  2. ๋ณผ๋ง๊ณต ๋ฌด๊ฒŒ๋Š” M์œผ๋กœ ์ตœ๋Œ€ 10
  3. ์„œ๋กœ ๊ฐ™์€ ๋ฌด๊ฒŒ์˜ ๋ณผ๋ง๊ณต์€ ๊ณ ๋ฅผ ์ˆ˜ ์—†์Œ
  4. ๊ฐ™์€ ๋ฌด๊ฒŒ์˜ ๊ณต์ด ์—ฌ๋Ÿฌ ๊ฐœ ์กด์žฌํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๋‹ค๋ฅธ ๊ณต์œผ๋กœ ๊ฐ„์ฃผ

๐Ÿ“Œ ์˜ˆ์‹œ

5 3

1 3 2 3 2

โ†’ 8๊ฐ€์ง€

8 5

1 5 4 3 2 4 5 2

โ†’ 25๊ฐ€์ง€

๐Ÿ“Œ ์ดˆ๊ธฐ ์ ‘๊ทผ ๋ฐฉ๋ฒ•

A๊ฐ€ ์ฒซ ๋ฒˆ์งธ ๊ณต์„ ๊ณจ๋ž๋‹ค๊ณ  ๊ฐ€์ •ํ•œ๋‹ค.

  1. 1์„ ๊ณจ๋ž์œผ๋ฏ€๋กœ, ๋‚˜๋จธ์ง€ ๊ณต ์ค‘ 1์ด ์•„๋‹Œ ๊ฒƒ์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•œ๋‹ค.
  2. ๊ทธ ๋’ค 3์„ ๊ณจ๋ž์„ ๊ฒฝ์šฐ, ๋‚˜๋จธ์ง€ ๊ณต ์ค‘ 3์ด ์•„๋‹Œ ๊ฒƒ์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•œ๋‹ค.
  3. ...

์œ„์˜ ๋ฐฉ์‹์œผ๋กœ ์ฒซ ๋ฒˆ์งธ ๊ณต, ๋‘ ๋ฒˆ์งธ ๊ณต, ์„ธ ๋ฒˆ์งธ ๊ณต์„ ๊ณจ๋ž์„ ๋•Œ๋งˆ๋‹ค

๋’ค์˜ ๊ณต ์ค‘ ๋ฌด๊ฒŒ๊ฐ€ ๋‹ค๋ฅธ ๊ณต์˜ ๊ฐœ์ˆ˜๋ฅผ ํ•ฉํ•ด๊ฐ€๋ฉฐ ์ตœ์ข… ๋‹ต์„ ๊ตฌํ•˜์˜€๋‹ค.

๐Ÿ“Œ ๊ต์žฌ ์ ‘๊ทผ ๋ฐฉ๋ฒ•

๊ต์žฌ์˜ ๋ฐฉ์‹์€ ๋ชจ๋“  ๋ณผ๋ง ๊ณต์˜ ๊ฐœ์ˆ˜๋ฅผ ์นด์šดํŠธํ•œ ๋’ค ํ’€์ด๋ฅผ ์‹œ์ž‘ํ•˜์˜€๋‹ค.

๋”ฐ๋ผ์„œ ํŠน์ • ๊ณต์„ ์„ ํƒํ–ˆ์„ ์‹œ, ํ•ด๋‹น ๊ณต๊ณผ ๋‹ค๋ฅธ ๋ฌด๊ฒŒ์˜ ๊ณต ์ค‘ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ํ•ฉํ•ด๋‚˜๊ฐ”๋‹ค.

๐Ÿ“Œ ์†Œ์Šค ์ฝ”๋“œ

# ๊ทธ๋ฆฌ๋”” ์‹ฌํ™” ๋ฌธ์ œ ํ’€์ด: ๋ณผ๋ง๊ณต ๊ณ ๋ฅด๊ธฐ
# ์ตœ๋Œ€๊ฐ’ n = 1000, m = 10

# ๋ฌธ์ œ ํ’€์ด
def solution(data):
    length = len(data)
    number = []
    sum = 0

    for i in range(length):
        cnt = 0
        for j in range(i, length):
            if data[i] != data[j]:
                cnt += 1
        number.append(cnt)

    for num in number:
        print(num)
        sum += num

    print(sum)

# ๊ต์žฌ ํ’€์ด
def answer(data, n,m):
    # 1๋ถ€ํ„ฐ 10๊นŒ์ง€์˜ ๋ฌด๊ฒŒ๋ฅผ ๋‹ด์„ ์ˆ˜ ์žˆ๋Š” ๋ฆฌ์ŠคํŠธ
    array = [0]*11

    for x in data:
        array[x] += 1

    result = 0
    # 1๋ถ€ํ„ฐ m๊นŒ์ง€์˜ ๊ฐ ๋ฌด๊ฒŒ์— ๋Œ€ํ•˜์—ฌ ์ฒ˜๋ฆฌ
    for i in range(1, m+1):
        # ๊ฐ ๋ฌด๊ฒŒ์— ํ•ด๋‹นํ•˜๋Š” ๋ณผ๋ง๊ณต์˜ ๊ฐœ์ˆ˜ ์นด์šดํŠธ
        n -= array[i] # ๋ฌด๊ฒŒ๊ฐ€ i์ธ ๋ณผ๋ง๊ณต์˜ ๊ฐœ์ˆ˜(A๊ฐ€ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐœ์ˆ˜) ์ œ์™ธ
        result += array[i] * n # B๊ฐ€ ์„ ํƒํ•˜๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜์™€ ๊ณฑํ•˜๊ธฐ

    print(result)


n, m = map(int, input().split())
data = list(map(int, input().split()))

solution(data)

์ด๊ฒƒ์ด ์ฝ”๋”ฉํ…Œ์ŠคํŠธ๋‹ค - ๋‚˜๋™๋นˆ