Scroll indicator done

์ด์ฝ”ํ…Œ๋Š” 1์žฅ์ด ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์œ ํ˜•๋“ค์˜ ์–‘์‹ ์„ค๋ช…๋“ค์„ ํ•˜์—ฌ์„œ ๋ญ.. ํฌ๊ฒŒ ์ค‘์š”ํ•œ ๋‚ด์šฉ์€ ์—†๋‹ค
์ค‘์š”ํ•˜๊ธดํ•œ๋ฐ ์šฐ์„ ์€ ์ฝ”ํ…Œ ์‹œํ—˜์„ ํ†ต๊ณผํ•ด์•ผ ... ใ…Žใ…Ž;
์•„๋ฌดํŠผ ๊ทธ๋ž˜์„œ 2์žฅ ์ค‘๋ฐ˜ ์ •๋„์— ๋‚˜์˜ค๋Š” 2.5๋กœ ์žก๊ณ  ์—ฌ๊ธฐ์„œ ์ค‘์š”ํ•˜๊ฒŒ ์„ค๋ช…ํ•ด์ฃผ๋Š” python ์ด๋ก ์„ ์ •๋ฆฌํ•œ ํŒŒํŠธ์ด๋‹ค.
 

์ˆ˜์ž๋ฃŒํ˜•, ์ง€์ˆ˜ํ‘œํ˜„๋ฐฉ์‹, ์—ฐ์‚ฐ์ž 
def func1():
  
  ##---์ˆ˜์ž๋ฃŒํ˜•---
  
  #์‹ค์ˆ˜์˜ ์†Œ์ˆ˜๋ถ€๊ฐ€ 0์ผ ๋•Œ ์ƒ๋žต
  a = 5.
  b = -.7
  print(a, b)
  
  ##์ง€์ˆ˜ํ‘œํ˜„๋ฐฉ์‹
  #์œ ํšจ์ˆซ์že^์ง€์ˆ˜ = ์œ ํšจ์ˆซ์žX10^์ง€์ˆ˜
  
  a = 3954e-3
  b = int(1e9)  #์ •์ˆ˜๋กœ ํ‘œํ˜„ํ•˜๊ณ  ์‹ถ์œผ๋ฉด
  print(a, b)
  
  #์•„๋ฌด๋ฆฌ ์‹ค์ˆ˜์—ฌ๋„ ๋ฏธ์„ธ์˜ค์ฐจ๊ฐ€ ์žˆ์œผ๋‹ˆ
  a = round(123.456, 2)  #๋‘˜์งธ์ž๋ฆฌ๊นŒ์ง€
  print(a)
  
  #์—ฐ์‚ฐ์ž
  a = 5
  b = 3
  print(a % b, a // b, a**b, a**0.5)
  #๋‚˜๋จธ์ง€, ๋ชซ, ๊ฑฐ๋“ญ ์ œ๊ณฑ, ์ œ๊ณฑ๊ทผ
๋ฆฌ์ŠคํŠธ ์ž๋ฃŒํ˜• (indexing, slicing, list comprehension)
list comprehension์ด ์ง„์งœ ์ค‘์š”ํ•˜๋‹ค 
  ##---๋ฆฌ์ŠคํŠธ์ž๋ฃŒํ˜•---
  #data๋ฅผ ์—ฐ์†์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด like array, index = 0
  
  #indexing (์ ‘๊ทผ)
  a = [1, 2, 3, 4, 5]
  print(a[2], a[-3])
  a[2] = 7
  print(a)
  
  #slicing
  print(a[1:4])
  
  #list comprehension
  #2์ฐจ์› list์— ํšจ๊ณผ์ ์ด๋‹ค. ํŠนํžˆ N X M
  
  array = [i for i in range(20) if i % 2 == 1]  #0๋ถ€ํ„ฐ 19๊นŒ์ง€ ์ค‘ ํ™€์ˆ˜๋งŒ ๋‹ด๊ธฐ
  print(array)
  
  n = 4
  m = 3
  array = [['o'] * m for _ in range(n)]
  #์–ธ๋”๋ฐ”(_) : ๋ฐ˜๋ณต์„ ์œ„ํ•œ ๋ณ€์ˆ˜์˜ ๊ฐ’ ๋ฌด์‹œํ•˜๊ณ ์ž
  print(array)
  array[1][2] = 7  #1ํ–‰2์—ด ๋ณ€๊ฒฝํ™•
  print(array)
๋ฌธ์ž์—ด ์ž๋ฃŒํ˜•
  #---๋ฌธ์ž์—ด์ž๋ฃŒํ˜•---
  #concatenate and immutable
  print("Hello" + " " + "World")
  print("S" * 3)
  
  #tuple (๋˜ํ•œ immutable)
  a = (1, 2, 3, 4, 5, 6)
  print(a[1:4])
  #for data๊ด€๋ฆฌ, hashing, memory ํšจ์œจ์ 
์‚ฌ์ „์ž๋ฃŒํ˜•, ์ง‘ํ•ฉ ์ž๋ฃŒํ˜•, ๊ธฐ๋ณธ ์ž…์ถœ๋ ฅ
#์‚ฌ์ „์ž๋ฃŒํ˜• O(n)
#key- value
#immutable

data = dict()
data['์‚ฌ๊ณผ'] = "A"
data['๋ฐ”๋‚˜๋‚˜']="B"
data['์ฝ”์ฝ”๋„›']="C"
if '์‚ฌ๊ณผ' in data:
  print("์‚ฌ๊ณผ๊ฐ€ ์žˆ๋„ค")

#key value ์ด์šฉ
key_list = data.keys()
value_list = data.values()
for key in key_list:
  print(data[key])

key_list = list(key_list)
print(key_list)

#์ง‘ํ•ฉ์ž๋ฃŒํ˜• O(1)
data = set([1,1,2,3,4,4,5]) #์ค‘๋ณต์ œ๊ฑฐ
print(data)
#์—ฐ์‚ฐ
data.add(6)
data.update([7,8])
data.remove(4)
print(data)

#๊ธฐ๋ณธ ์ž…์ถœ๋ ฅ
print("๊ธฐ๋ณธ์ž…์ถœ๋ ฅ ์‹คํ–‰. ๊ฐœ์ˆ˜ ์ž…๋ ฅ, ์ˆซ์ž์ž…๋ ฅ ")
n = int(input())
data = list(map(int, input().split())) #๋ฆฌ์ŠคํŠธ, ํ•จ์ˆ˜์ ์šฉ, ์ •์ˆ˜๋กœ, ์ž…๋ ฅ, ์นธ๋„์›Œ์„œ
data.sort(reverse=True) #๋‚ด๋ฆผ์ฐจ์ˆœ์ •๋ ฌ
print(data)

#๋น ๋ฅด๊ฒŒ ์ž…๋ ฅ๋ฐ›๊ธฐ
print("๋น ๋ฅด๊ฒŒ ์ž…๋ ฅ๋ฐ›๊ธฐ ์‹คํ–‰")
import sys 
data = sys.stdin.readline().rstrip() #ํ•œ์ค„๋ฐ์ดํ„ฐ๊ฐ€ ์•Œ์•„์„œ ๋“ค์–ด๊ฐ
print(data)

print(3, end= " ") #๊ณต๋ฐฑํ›„ ๋ฐ”๋กœ ์ถœ๋ ฅํ•˜๊ธฐ
print(4, end= " ")

#f-string ์˜ˆ์ œ _ ์ ‘๋‘์‚ฌ f๋กœ ๋ฌธ์ž์—ด, ์ •์ˆ˜ ํ•จ๊ป˜ ์ถœ๋ ฅ
answer = 7
print(f"์ •๋‹ต์€ {answer}์ž…๋‹ˆ๋‹ค.")

 
์ด์™ธ์—๋„ ๋‚ด๊ฐ€ ๋Œ€ํ•™์ƒํ™œ ์ค‘ ์ •๋ฆฌํ•˜๋ฉฐ 4๋…„๋‚ด๋‚ด ์šฐ๋ ค๋จน์€ ์ •๋ฆฌ ๋…ธํŠธ๊ฐ€ ์žˆ๋Š”๋ฐ ์‹œ๊ฐ„์ด ๋˜๋ฉด ๋” ์ •๋ฆฌํ•ด์„œ ์˜ฌ๋ ค๋ณด๋„๋ก.. ํ•˜๊ฒ ์Œ..
์•„๋งˆ๋„ ๋‚ด ๋ˆˆ๋†’์ด ๋งž์ถฐ์„œ ์ •๋ฆฌํ•ด์„œ ์‚ฌ๋žŒ๋“ค์ด ๊ต‰์žฅํžˆ ์ดํ•ดํ•˜๊ธฐ ํŽธํ•˜์ง€ ์•Š์„๊นŒ (?) ์ƒ๊ฐํ•œ๋‹ค