Notice
Recent Posts
Link
Today
Total
10-06 02:35
๊ด€๋ฆฌ ๋ฉ”๋‰ด

dingdong coding

[ 6092 - 6098 ] ๋ฆฌ์ŠคํŠธ ๋ณธ๋ฌธ

๐Ÿ”ตCoding Test/CodeUp

[ 6092 - 6098 ] ๋ฆฌ์ŠคํŠธ

๐Ÿถ ๊ฐœ๋ฐœ๊ฐœ๋ฐœ ๐Ÿพ 2022. 1. 19. 00:58

# ๊ฐœ๋… ๋ณต๊ธฐ์šฉ 

 

[ 6092 ] ์ด์ƒํ•œ ์ถœ์„ ๋ฒˆํ˜ธ ๋ถ€๋ฅด๊ธฐ1

๋ฌธ์ œ ์ •๋ณด ์„ ์ƒ๋‹˜์€ ์ˆ˜์—…์„ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ์ด์ƒํ•œ ์ถœ์„์„ ๋ถ€๋ฅธ๋‹ค. ์„ ์ƒ๋‹˜์€ ์ถœ์„๋ถ€๋ฅผ ๋ณด๊ณ  ๋ฒˆํ˜ธ๋ฅผ ๋ถ€๋ฅด๋Š”๋ฐ, ํ•™์ƒ๋“ค์˜ ์–ผ๊ตด๊ณผ ์ด๋ฆ„์„ ๋นจ๋ฆฌ ์ตํžˆ๊ธฐ ์œ„ํ•ด ๋ฒˆํ˜ธ๋ฅผ ๋ฌด์ž‘์œ„(๋žœ๋ค)์œผ๋กœ ๋ถ€๋ฅธ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์–ผ๊ตด๊ณผ ์ด๋ฆ„์ด ์ž˜ ๊ธฐ์–ต๋˜์ง€ ์•Š๋Š” ํ•™์ƒ๋“ค์€ ๋ฒˆํ˜ธ๋ฅผ ์—ฌ๋Ÿฌ ๋ฒˆ ๋ถˆ๋Ÿฌ ์ด๋ฆ„๊ณผ ์–ผ๊ตด์„ ๋นจ๋ฆฌ ์ตํžˆ๋ ค๊ณ  ํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

์ถœ์„ ๋ฒˆํ˜ธ๋ฅผ n๋ฒˆ ๋ฌด์ž‘์œ„๋กœ ๋ถˆ๋ €์„ ๋•Œ, ๊ฐ ๋ฒˆํ˜ธ(1 ~ 23)๊ฐ€ ๋ถˆ๋ฆฐ ํšŸ์ˆ˜๋ฅผ ๊ฐ๊ฐ ์ถœ๋ ฅํ•ด๋ณด์ž.

 

์ž…๋ ฅ ์ฒซ ๋ฒˆ์งธ ์ค„์— ์ถœ์„ ๋ฒˆํ˜ธ๋ฅผ ๋ถ€๋ฅธ ํšŸ์ˆ˜์ธ ์ •์ˆ˜ n์ด ์ž…๋ ฅ๋œ๋‹ค. (1 ~ 10000) ๋‘ ๋ฒˆ์งธ ์ค„์—๋Š” ๋ฌด์ž‘์œ„๋กœ ๋ถ€๋ฅธ n๊ฐœ์˜ ๋ฒˆํ˜ธ(1 ~ 23)๊ฐ€ ๊ณต๋ฐฑ์„ ๋‘๊ณ  ์ˆœ์„œ๋Œ€๋กœ ์ž…๋ ฅ๋œ๋‹ค.

 

์ถœ๋ ฅ 1๋ฒˆ๋ถ€ํ„ฐ ๋ฒˆํ˜ธ๊ฐ€ ๋ถˆ๋ฆฐ ํšŸ์ˆ˜๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ํ•œ ์ค„๋กœ ์ถœ๋ ฅํ•œ๋‹ค.

 

n = int(input())
a = input().split()  # a[0] ~ a[n-1] ๊นŒ์ง€ ๊ฐ’ ์ €์žฅ

d = []
for i in range(24): # d[0] ~ d[23] 0์œผ๋กœ ์ดˆ๊ธฐํ™”
    d.append(0)

for i in range(n): # 0 ~ n-1 ๊นŒ์ง€ a[0] ~ a[n-1]
    d[int(a[i])] += 1 # int(a[i]) = ํ•™์ƒ ์ถœ์„๋ฒˆํ˜ธ count +1

for i in range(1, 24): # 1 ~ 23
    print(d[i], end=' ')

 

๋ฆฌ์ŠคํŠธ

d = [ ]           #์–ด๋–ค ๋ฐ์ดํ„ฐ ๋ชฉ๋ก(list) ์„ ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด ์•„๋ฌด๊ฒƒ๋„ ์—†๋Š” ๋ฆฌ์ŠคํŠธ ๋ณ€์ˆ˜ ๋งŒ๋“ค๊ธฐ
d.append(๊ฐ’)   #d ๋ฆฌ์ŠคํŠธ์˜ ๋งˆ์ง€๋ง‰์— ์›ํ•˜๋Š” ๊ฐ’์„ ์ถ”๊ฐ€(append)ํ•ด ๋„ฃ์Œ 
d[a[i]] += 1    #2์ค‘ ๋ฆฌ์ŠคํŠธ ์ฐธ์กฐ : ๋งŒ์•ฝ a[i]์˜ ๊ฐ’์ด 1์ด์—ˆ๋‹ค๋ฉด? d[1] += 1 ์ด ์‹คํ–‰๋˜๋Š” ๊ฒƒ์ด๋‹ค. 1๋ฒˆ ์นด์šดํŠธ 1๊ฐœ ์ฆ๊ฐ€


์–ด๋–ค ๊ฐ’์„ ๊ธฐ๋กํ–ˆ๋‹ค๊ฐ€ ๋‹ค์‹œ ์‚ฌ์šฉํ•  ํ•„์š”๊ฐ€ ์žˆ์„ ๋•Œ, ํ•„์š”ํ•œ ๋ณ€์ˆ˜(variable)๋ฅผ ๋งŒ๋“ค์–ด ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ, ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฐ’์„ ํ•˜๋‚˜๋กœ ๋ฌถ์–ด ๋ชฉ๋ก์œผ๋กœ ๊ธฐ๋กํ–ˆ๋‹ค๊ฐ€ ๋‹ค์‹œ ์‚ฌ์šฉํ•  ํ•„์š”๊ฐ€ ์žˆ์„ ๋•Œ, ๋ฆฌ์ŠคํŠธ(list)๋ฅผ ๋งŒ๋“ค์–ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ๋ฆฌ์ŠคํŠธ๋Š” ๋ณ€์ˆ˜๋“ค์„ ๋ชจ์•„ ๋†“์€ ๋ณ€์ˆ˜๋ผ๊ณ  ์ƒ๊ฐํ•  ์ˆ˜๋„ ์žˆ๊ณ , ์ฐธ์กฐ๋ฒˆํ˜ธ๋ฅผ ์ด์šฉํ•ด ๊ฐ„๋‹จํ•˜๊ณ  ํŽธ๋ฆฌํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

[ 6093 ] ์ด์ƒํ•œ ์ถœ์„ ๋ฒˆํ˜ธ ๋ถ€๋ฅด๊ธฐ2

๋ฌธ์ œ ์ •๋ณด ์„ ์ƒ๋‹˜์€ ์ˆ˜์—…์„ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— ์ด์ƒํ•œ ์ถœ์„์„ ๋ถ€๋ฅธ๋‹ค. ํ•™์ƒ๋“ค์˜ ์–ผ๊ตด๊ณผ ์ด๋ฆ„์„ ๋นจ๋ฆฌ ์ตํžˆ๊ธฐ ์œ„ํ•ด ๋ฒˆํ˜ธ๋ฅผ ๋ฌด์ž‘์œ„(๋žœ๋ค)์œผ๋กœ ๋ถ€๋ฅด๋Š”๋ฐ, ์˜์ผ์ด๋Š” ์„ ์ƒ๋‹˜์ด ๋ถ€๋ฅธ ๋ฒˆํ˜ธ๋“ค์„ ๊ธฐ์–ตํ•˜๊ณ  ์žˆ๋‹ค๊ฐ€ ๊ฑฐ๊พธ๋กœ ๋ถˆ๋Ÿฌ๋ณด๋Š” ๊ฒƒ์„ ํ•ด๋ณด๊ณ  ์‹ถ์–ด์กŒ๋‹ค.

์ถœ์„ ๋ฒˆํ˜ธ๋ฅผ n๋ฒˆ ๋ฌด์ž‘์œ„๋กœ ๋ถˆ๋ €์„ ๋•Œ, ๋ถ€๋ฅธ ๋ฒˆํ˜ธ๋ฅผ ๊ฑฐ๊พธ๋กœ ์ถœ๋ ฅํ•ด ๋ณด์ž.

 

์ž…๋ ฅ ๋ฒˆํ˜ธ๋ฅผ ๋ถ€๋ฅธ ํšŸ์ˆ˜(n, 1 ~ 10000)๊ฐ€ ์ฒซ ์ค„์— ์ž…๋ ฅ๋œ๋‹ค. n๊ฐœ์˜ ๋žœ๋ค ๋ฒˆํ˜ธ(k, 1 ~ 23)๊ฐ€ ๋‘ ๋ฒˆ์งธ ์ค„์— ๊ณต๋ฐฑ์„ ์‚ฌ์ด์— ๋‘๊ณ  ์ˆœ์„œ๋Œ€๋กœ ์ž…๋ ฅ๋œ๋‹ค.

 

์ถœ๋ ฅ ์ถœ์„์„ ๋ถ€๋ฅธ ๋ฒˆํ˜ธ ์ˆœ์„œ๋ฅผ ๋ฐ”๊พธ์–ด ๊ณต๋ฐฑ์„ ๋‘๊ณ  ์ถœ๋ ฅํ•œ๋‹ค.

n = int(input())
a = input().split()  # a[0] ~ a[n-1] ๊นŒ์ง€ ๊ฐ’ ์ €์žฅ

for i in range(n):
  a[i] = int(a[i])

for i in range(n-1, -1, -1):
    print(a[i], end=' ')

range(์‹œ์ž‘, ๋, ์ฆ๊ฐ) #์‹œ์ž‘ ์ˆ˜๋Š” ํฌํ•จ, ๋ ์ˆ˜๋Š” ํฌํ•จํ•˜์ง€ ์•Š์Œ. [์‹œ์ž‘, ๋)
range(n-1, -1, -1) #n-1, n-2, ..., 3, 2, 1, 0

 

[ 6094 ] ์ด์ƒํ•œ ์ถœ์„ ๋ฒˆํ˜ธ ๋ถ€๋ฅด๊ธฐ3

๋ฌธ์ œ ์ •๋ณด ์„ ์ƒ๋‹˜์€ ์˜ค๋Š˜๋„ ์ด์ƒํ•œ ์ถœ์„์„ ๋ถ€๋ฅธ๋‹ค. ์˜์ผ์ด๋Š” ์˜ค๋Š˜๋„ ๋‹ค๋ฅธ ์ƒ๊ฐ์„ ํ•ด๋ณด์•˜๋‹ค. ์ถœ์„ ๋ฒˆํ˜ธ๋ฅผ ๋‹ค ๋ถ€๋ฅด์ง€๋Š” ์•Š์€ ๊ฒƒ ๊ฐ™์€๋ฐ... ๊ฐ€์žฅ ๋น ๋ฅธ ๋ฒˆํ˜ธ๊ฐ€ ๋ญ์˜€์ง€? ์ถœ์„ ๋ฒˆํ˜ธ๋ฅผ n๋ฒˆ ๋ฌด์ž‘์œ„๋กœ ๋ถˆ๋ €์„ ๋•Œ, ๊ฐ€์žฅ ๋น ๋ฅธ ๋ฒˆํ˜ธ๋ฅผ ์ถœ๋ ฅํ•ด ๋ณด์ž.

๋‹จ, ์ฒซ ๋ฒˆ์งธ ๋ฒˆํ˜ธ์™€ ๋งˆ์ง€๋ง‰ ๋ฒˆํ˜ธ๊ฐ€ ๋ช‡ ๋ฒˆ์ธ์ง€๋Š” ์•„๋ฌด๋„ ๋ชจ๋ฅธ๋‹ค. ์Œ์ˆ˜(-) ๋ฒˆํ˜ธ, 0๋ฒˆ ๋ฒˆํ˜ธ๋„ ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค.

 

์ž…๋ ฅ ๋ฒˆํ˜ธ๋ฅผ ๋ถ€๋ฅธ ํšŸ์ˆ˜(n, 1 ~ 10000)๊ฐ€ ์ฒซ ์ค„์— ์ž…๋ ฅ๋œ๋‹ค. n๊ฐœ์˜ ๋žœ๋ค ๋ฒˆํ˜ธ(k)๊ฐ€ ๋‘ ๋ฒˆ์งธ ์ค„์— ๊ณต๋ฐฑ์„ ์‚ฌ์ด์— ๋‘๊ณ  ์ˆœ์„œ๋Œ€๋กœ ์ž…๋ ฅ๋œ๋‹ค.

 

์ถœ๋ ฅ ์ถœ์„์„ ๋ถ€๋ฅธ ๋ฒˆํ˜ธ ์ค‘์— ๊ฐ€์žฅ ๋น ๋ฅธ ๋ฒˆํ˜ธ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

n = int(input())
a = list(map(int, input().split()))
result = a[0]

for i in range(n): # 0 ~ n-1
    if a[i] < result:
        result = a[i]

print(result)

 

[ 6095 ] ๋ฐ”๋‘‘ํŒ์— ํฐ ๋Œ ๋†“๊ธฐ

๋ฌธ์ œ ๊ธฐ์ˆ™์‚ฌ ์ƒํ™œ์„ ํ•˜๋Š” ํ•™๊ต์—์„œ ์–ด๋–ค ๊ธˆ์š”์ผ(์ „์› ๊ท€๊ฐ€์ผ)์—๋Š” ๋ชจ๋‘ ์ง‘์œผ๋กœ ๊ท€๊ฐ€๋ฅผ ํ•œ๋‹ค. ์˜ค๋žœ๋งŒ์— ์ง‘์— ๊ฐ„ ์˜์ผ์ด๋Š” ์•„๋ฒ„์ง€์™€ ํ•จ๊ป˜ ๋‘๋˜ ๋งค์šฐ ํฐ ์˜ค๋ชฉ์— ๋Œ€ํ•ด์„œ ์ƒ๊ฐํ•ด ๋ณด๋‹ค๊ฐ€ "๋ฐ”๋‘‘ํŒ์— ๋Œ์„ ์˜ฌ๋ฆฐ ๊ฒƒ์„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ•  ์ˆ˜ ์žˆ์„๊นŒ?"ํ•˜๊ณ  ์ƒ๊ฐํ•˜์˜€๋‹ค. ๋ฐ”๋‘‘ํŒ(19 * 19)์— n๊ฐœ์˜ ํฐ ๋Œ์„ ๋†“๋Š”๋‹ค๊ณ  ํ•  ๋•Œ, n๊ฐœ์˜ ํฐ ๋Œ์ด ๋†“์ธ ์œ„์น˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•ด๋ณด์ž.

 

์ž…๋ ฅ ๋ฐ”๋‘‘ํŒ์— ์˜ฌ๋ ค ๋†“์„ ํฐ ๋Œ์˜ ๊ฐœ์ˆ˜(n)๊ฐ€ ์ฒซ ์ค„์— ์ž…๋ ฅ๋œ๋‹ค. ๋‘˜์งธ ์ค„ ๋ถ€ํ„ฐ n+1 ๋ฒˆ์งธ ์ค„๊นŒ์ง€ ํžŒ ๋Œ์„ ๋†“์„ ์ขŒํ‘œ(x, y)๊ฐ€ n์ค„ ์ž…๋ ฅ๋œ๋‹ค. n์€ 10์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๊ณ  x, y ์ขŒํ‘œ๋Š” 1 ~ 19 ๊นŒ์ง€์ด๋ฉฐ, ๋˜‘๊ฐ™์€ ์ขŒํ‘œ๋Š” ์ž…๋ ฅ๋˜์ง€ ์•Š๋Š”๋‹ค.

 

์ถœ๋ ฅ ํฐ ๋Œ์ด ์˜ฌ๋ ค์ง„ ๋ฐ”๋‘‘ํŒ์˜ ์ƒํ™ฉ์„ ์ถœ๋ ฅํ•œ๋‹ค. ํฐ ๋Œ์ด ์žˆ๋Š” ์œ„์น˜๋Š” 1, ์—†๋Š” ๊ณณ์€ 0์œผ๋กœ ์ถœ๋ ฅํ•œ๋‹ค.

# ํ’€์ด 1
n = int(input())
d = [[0 for j in range(20)] for i in range(20)]

for i in range(n):
    x, y = map(int, input().split())
    d[x][y] = 1

for i in range(1, 20):
    for j in range(1, 20):
        print(d[i][j], end=' ')
    print()
# ํ’€์ด2
d = []
for i in range(20):
    d.append([])
    for j in range(20):
        d[i].append(0)

n = int(input())
for i in range(n):
    x, y = input().split()
    d[int(x)][int(y)] = 1

for i in range(1,20):
    for j in range(1,20):
        print(d[i][j], end=' ')
    print()

๊ฐ€๋กœ๋ฒˆํ˜ธ, ์„ธ๋กœ๋ฒˆํ˜ธ๋ฅผ ์‚ฌ์šฉํ•ด 2์ฐจ์› ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ์ฒ˜๋Ÿผ ์‰ฝ๊ฒŒ ๊ธฐ๋กํ•˜๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
๋ฆฌ์ŠคํŠธ์ด๋ฆ„[๋ฒˆํ˜ธ][๋ฒˆํ˜ธ] ํ˜•์‹์œผ๋กœ ์ €์žฅ๋˜์–ด์žˆ๋Š” ๊ฐ’์„ ์ฝ๊ณ  ์“ธ ์ˆ˜ ์žˆ๊ณ , ๋” ํ™•์žฅํ•œ n์ฐจ์›์˜ ๋ฆฌ์ŠคํŠธ๋„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

 

List Comprehensions

ex) d = [[0 for j in range(20)] for i in range(20)]

 

[ 6096 ] ๋ฐ”๋‘‘์•Œ ์‹ญ์ž ๋’ค์ง‘๊ธฐ

๋ฌธ์ œ ๋ถ€๋ชจ๋‹˜์„ ๊ธฐ๋‹ค๋ฆฌ๋˜ ์˜์ผ์ด๋Š” ๊ฒ€์ •/ํฐ ์ƒ‰ ๋ฐ”๋‘‘์•Œ์„ ๋ฐ”๋‘‘ํŒ์— ๊ฝ‰ ์ฑ„์›Œ ๊น”์•„ ๋†“๊ณ  ๋†€๋‹ค๊ฐ€... "์‹ญ(+)์ž ๋’ค์ง‘๊ธฐ๋ฅผ ํ•ด๋ณผ๊นŒ?"ํ•˜๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. ์‹ญ์ž ๋’ค์ง‘๊ธฐ๋Š” ๊ทธ ์œ„์น˜์— ์žˆ๋Š” ๋ชจ๋“  ๊ฐ€๋กœ์ค„ ๋Œ์˜ ์ƒ‰์„ ๋ฐ˜๋Œ€(1->0, 0->1)๋กœ ๋ฐ”๊พผ ํ›„, ๋‹ค์‹œ ๊ทธ ์œ„์น˜์— ์žˆ๋Š” ๋ชจ๋“  ์„ธ๋กœ์ค„ ๋Œ์˜ ์ƒ‰์„ ๋ฐ˜๋Œ€๋กœ ๋ฐ”๊พธ๋Š” ๊ฒƒ์ด๋‹ค. ์–ด๋–ค ์œ„์น˜๋ฅผ ๊ณจ๋ผ ์ง‘์ž ๋’ค์ง‘๊ธฐ๋ฅผ ํ•˜๋ฉด, ๊ทธ ์œ„์น˜๋ฅผ ์ œ์™ธํ•œ ๊ฐ€๋กœ์ค„๊ณผ ์„ธ๋กœ์ค„์˜ ์ƒ‰์ด ๋ชจ๋‘ ๋ฐ˜๋Œ€๋กœ ๋ฐ”๋€๋‹ค. ๋ฐ”๋‘‘ํŒ(19 * 19)์— ํฐ ๋Œ(1) ๋˜๋Š” ๊ฒ€์ • ๋Œ(0)์ด ๋ชจ๋‘ ๊ฝ‰ ์ฑ„์›Œ์ ธ ๋†“์—ฌ์žˆ์„ ๋•Œ,
n๊ฐœ์˜ ์ขŒํ‘œ๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ์‹ญ(+)์ž ๋’ค์ง‘๊ธฐํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•ด๋ณด์ž.

 

์ž…๋ ฅ ๋ฐ”๋‘‘์•Œ์ด ๊น”๋ ค ์žˆ๋Š” ์ƒํ™ฉ์ด 19 * 19 ํฌ๊ธฐ์˜ ์ •์ˆ˜๊ฐ’์œผ๋กœ ์ž…๋ ฅ๋œ๋‹ค. ์‹ญ์ž ๋’ค์ง‘๊ธฐ ํšŸ์ˆ˜(n)๊ฐ€ ์ž…๋ ฅ๋œ๋‹ค.
์‹ญ์ž ๋’ค์ง‘๊ธฐ ์ขŒํ‘œ๊ฐ€ ํšŸ์ˆ˜(n) ๋งŒํผ ์ž…๋ ฅ๋œ๋‹ค. ๋‹จ, n์€ 10์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๋‹ค.

 

์ถœ๋ ฅ ์‹ญ์ž ๋’ค์ง‘๊ธฐ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

 

d = [[0 for j in range(20)] for i in range(20)]

for i in range(19):
    a = input().split()
    for j in range(19):
        d[i+1][j+1] = int(a[j])

n = int(input())

for i in range(n):
    x, y = map(int, input().split())
    for j in range(1, 20):
        if d[j][y] == 0:
            d[j][y] = 1
        else:
            d[j][y] = 0

        if d[x][j] == 0:
            d[x][j] = 1
        else:
            d[x][j] = 0

for i in range(1, 20):
    for j in range(1, 20):
        print(d[i][j], end=' ')
    print()

 

[ 6097 ] ์„คํƒ•๊ณผ์ž ๋ฝ‘๊ธฐ

๋ฌธ์ œ ๋ถ€๋ชจ๋‹˜๊ณผ ํ•จ๊ป˜ ๋†€๋Ÿฌ๊ฐ„ ์˜์ผ์ด๋Š” ์„คํƒ•๊ณผ์ž(์„คํƒ•์„ ๋…น์—ฌ ๋ฌผ๊ณ ๊ธฐ ๋“ฑ์˜ ๋ชจ์–‘์„ ๋งŒ๋“  ๊ฒƒ) ๋ฝ‘๊ธฐ๋ฅผ ๋ณด๊ฒŒ ๋˜์—ˆ๋‹ค. ๊ธธ์ด๊ฐ€ ๋‹ค๋ฅธ ๋ช‡ ๊ฐœ์˜ ๋ง‰๋Œ€๋ฅผ ๋ฐ”๋‘‘ํŒ๊ณผ ๊ฐ™์€ ๊ฒฉ์žํŒ์— ๋†“๋Š”๋ฐ, ๋ง‰๋Œ€์— ์žˆ๋Š” ์„คํƒ•๊ณผ์ž ์ด๋ฆ„ ์•„๋ž˜์— ์žˆ๋Š” ๋ฒˆํ˜ธ๋ฅผ ๋ฝ‘์œผ๋ฉด ์„คํƒ•๊ณผ์ž๋ฅผ ๊ฐ€์ ธ๊ฐ€๋Š” ๊ฒŒ์ž„์ด์—ˆ๋‹ค. (์ž‰์–ด, ๋ถ•์–ด, ์šฉ ๋“ฑ ์—ฌ๋Ÿฌ ๊ฐ€์ง€๊ฐ€ ์ ํ˜€์žˆ๋‹ค.)

๊ฒฉ์žํŒ์˜ ์„ธ๋กœ(h), ๊ฐ€๋กœ(w), ๋ง‰๋Œ€์˜ ๊ฐœ์ˆ˜(n), ๊ฐ ๋ง‰๋Œ€์˜ ๊ธธ์ด(l), ๋ง‰๋Œ€๋ฅผ ๋†“๋Š” ๋ฐฉํ–ฅ(d:๊ฐ€๋กœ๋Š” 0, ์„ธ๋กœ๋Š” 1)๊ณผ ๋ง‰๋Œ€๋ฅผ ๋†“๋Š” ๋ง‰๋Œ€์˜ ๊ฐ€์žฅ ์™ผ์ชฝ ๋˜๋Š” ์œ„์ชฝ์˜ ์œ„์น˜(x, y)๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ๊ฒฉ์žํŒ์„ ์ฑ„์šด ๋ง‰๋Œ€์˜ ๋ชจ์–‘์„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค์–ด๋ณด์ž.

 

์ž…๋ ฅ ์ฒซ ์ค„์— ๊ฒฉ์žํŒ์˜ ์„ธ๋กœ(h), ๊ฐ€๋กœ(w) ๊ฐ€ ๊ณต๋ฐฑ์„ ๋‘๊ณ  ์ž…๋ ฅ๋˜๊ณ , ๋‘ ๋ฒˆ์งธ ์ค„์— ๋†“์„ ์ˆ˜ ์žˆ๋Š” ๋ง‰๋Œ€์˜ ๊ฐœ์ˆ˜(n)
์„ธ ๋ฒˆ์งธ ์ค„๋ถ€ํ„ฐ ๊ฐ ๋ง‰๋Œ€์˜ ๊ธธ์ด(l), ๋ฐฉํ–ฅ(d), ์ขŒํ‘œ(x, y)๊ฐ€ ์ž…๋ ฅ๋œ๋‹ค.
1 <= w, h <= 100
1 <= n <= 10
d = 0 or 1
1 <= x <= 100-h
1 <= y <= 100-w

 

์ถœ๋ ฅ ๋ชจ๋“  ๋ง‰๋Œ€๋ฅผ ๋†“์€ ๊ฒฉ์žํŒ์˜ ์ƒํƒœ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ๋ง‰๋Œ€์— ์˜ํ•ด ๊ฐ€๋ ค์ง„ ๊ฒฝ์šฐ 1, ์•„๋‹Œ ๊ฒฝ์šฐ 0์œผ๋กœ ์ถœ๋ ฅํ•œ๋‹ค. ๋‹จ, ๊ฐ ์ˆซ์ž๋Š” ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ถœ๋ ฅํ•œ๋‹ค.

# ํ’€์ด 1
h, w = map(int, input().split())
n = int(input())

a = [[0 for j in range(w)] for i in range(h)]

for i in range(n):
    l, d, x, y = map(int, input().split())
    for j in range(l):
        if d == 0:
            a[x-1][y-1] = 1
            y += 1
        else:
            a[x-1][y-1] = 1
            x += 1

for i in range(h):
    for j in range(w):
        print(a[i][j], end=' ')
    print()
# ํ’€์ด2
h, w = map(int, input().split())
n = int(input())

board = [[0] * w for _ in range(h)]

for i in range(n):
    l, d, x, y = map(int, input().split())
    if (d == 0):
        for j in range(l):
            board[x - 1][y - 1 + j] = 1
    else:
        for j in range(l):
            board[x - 1 + j][y - 1] = 1

for i in range(h):
    for j in range(w):
        print(board[i][j], end=' ')
    print()

 

[ 6098 ] ์„ฑ์‹คํ•œ ๊ฐœ๋ฏธ

๋ฌธ์ œ ์˜์ผ์ด๋Š” ์ƒ๋ช…๊ณผํ•™์— ๊ด€์‹ฌ์ด ์ƒ๊ฒจ ์™•๊ฐœ๋ฏธ๋ฅผ ์—ฐ๊ตฌํ•˜๊ณ  ์žˆ์—ˆ๋‹ค. ์™•๊ฐœ๋ฏธ๋ฅผ ์œ ์‹ฌํžˆ ์‚ดํŽด๋ณด๋˜ ์ค‘ ํŠน๋ณ„ํžˆ ์„ฑ์‹คํ•ด ๋ณด์ด๋Š” ๊ฐœ๋ฏธ๊ฐ€ ์žˆ์—ˆ๋Š”๋ฐ, ๊ทธ ๊ฐœ๋ฏธ๋Š” ๊ฐœ๋ฏธ๊ตด์—์„œ ๋‚˜์™€ ๋จน์ด๊นŒ์ง€ ๊ฐ€์žฅ ๋น ๋ฅธ ๊ธธ๋กœ ์ด๋™ํ•˜๋Š” ๊ฒƒ์ด์—ˆ๋‹ค. ๊ฐœ๋ฏธ๋Š” ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์›€์ง์ด๋‹ค๊ฐ€ ๋ฒฝ์„ ๋งŒ๋‚˜๋ฉด ์•„๋ž˜์ชฝ์œผ๋กœ ์›€์ง์—ฌ ๊ฐ€์žฅ ๋น ๋ฅธ ๊ธธ๋กœ ์›€์ง์˜€๋‹ค. (์˜ค๋ฅธ์ชฝ์— ๊ธธ์ด ๋‚˜ํƒ€๋‚˜๋ฉด ๋‹ค์‹œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์›€์ง์ธ๋‹ค.)

์ด์— ํ˜ธ๊ธฐ์‹ฌ์ด ์ƒ๊ธด ์˜์ผ์ด๋Š” ๊ทธ ๊ฐœ๋ฏธ๋ฅผ ๋ฏธ๋กœ ์ƒ์ž์— ๋„ฃ๊ณ  ์‚ดํŽด๋ณด๊ธฐ ์‹œ์ž‘ํ•˜์˜€๋‹ค. ๋ฏธ๋กœ ์ƒ์ž์— ๋„ฃ์€ ๊ฐœ๋ฏธ๋Š” ๋จน์ด๋ฅผ ์ฐพ์•˜๊ฑฐ๋‚˜, ๋” ์ด์ƒ ์›€์ง์ผ ์ˆ˜ ์—†์„ ๋•Œ๊นŒ์ง€ ์˜ค๋ฅธ์ชฝ ๋˜๋Š” ์•„๋ž˜์ชฝ์œผ๋กœ๋งŒ ์›€์ง์˜€๋‹ค.

๋ฏธ๋กœ ์ƒ์ž์˜ ๊ตฌ์กฐ๊ฐ€ 0(๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๊ณณ), 1(๋ฒฝ ๋˜๋Š” ์žฅ์• ๋ฌผ)๋กœ ์ฃผ์–ด์ง€๊ณ , ๋จน์ด๊ฐ€ 2๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ์„ฑ์‹คํ•œ ๊ฐœ๋ฏธ์˜ ์ด๋™ ๊ฒฝ๋กœ๋ฅผ ์˜ˆ์ƒํ•ด๋ณด์ž.

๋‹จ, ๋งจ ์•„๋ž˜์˜ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ์— ๋„์ฐฉํ•œ ๊ฒฝ์šฐ, ๋” ์ด์ƒ ์›€์ง์ผ ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ, ๋จน์ด๋ฅผ ์ฐพ์€ ๊ฒฝ์šฐ์—๋Š”
๋”์ด์ƒ ์ด๋™ํ•˜์ง€ ์•Š๊ณ  ๊ทธ ๊ณณ์— ๋จธ๋ฌด๋ฅธ๋‹ค๊ณ  ๊ฐ€์ •ํ•œ๋‹ค.

๋ฏธ๋กœ ์ƒ์ž์˜ ํ…Œ๋‘๋ฆฌ๋Š” ๋ชจ๋‘ ๋ฒฝ์œผ๋กœ ๋˜์–ด ์žˆ์œผ๋ฉฐ, ๊ฐœ๋ฏธ์ง‘์€ ๋ฐ˜๋“œ์‹œ (2, 2)์— ์กด์žฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฐœ๋ฏธ๋Š” (2, 2)์—์„œ ์ถœ๋ฐœํ•œ๋‹ค.

 

์ž…๋ ฅ 10*10 ํฌ๊ธฐ์˜ ๋ฏธ๋กœ ์ƒ์ž์˜ ๊ตฌ์กฐ์™€ ๋จน์ด์˜ ์œ„์น˜๊ฐ€ ์ž…๋ ฅ๋œ๋‹ค.

 

์ถœ๋ ฅ ์„ฑ์‹คํ•œ ๊ฐœ๋ฏธ๊ฐ€ ์ด๋™ํ•œ ๊ฒฝ๋กœ๋ฅผ 9๋กœ ํ‘œ์‹œํ•ด ์ถœ๋ ฅํ•œ๋‹ค.

d = [[0 for j in range(10)] for i in range(10)]

for i in range(10):
    a = input().split()
    for j in range(10):
        d[i][j] = int(a[j])
        
x, y = 1, 1

while True:
    if (d[x][y] == 0):
        d[x][y] = 9
    elif (d[x][y] == 2):
        d[x][y] = 9
        break

    if ((d[x][y + 1] == 1 and d[x + 1][y] == 1)):
        break
    if (d[x][y + 1] != 1):
        y = y + 1
    elif (d[x + 1][y] != 1):
        x = x + 1

for i in range(10):
    for j in range(10):
        print(d[i][j], end=' ')
    print()

 

Comments