λͺ©λ‘μ „체 κΈ€ (1005)

😎 κ³΅λΆ€ν•˜λŠ” μ§•μ§•μ•ŒνŒŒμΉ΄λŠ” μ²˜μŒμ΄μ§€?

[BAEKJOON python] 20056_λ§ˆλ²•μ‚¬ 상어와 νŒŒμ΄μ–΄λ³Ό

λ§ˆλ²•μ‚¬ 상어와 νŒŒμ΄μ–΄λ³Ό λ§ˆλ²•μ‚¬ 상어가 크기가 N×N인 κ²©μžμ— νŒŒμ΄μ–΄λ³Ό M개λ₯Ό λ°œμ‚¬ κ°€μž₯ μ²˜μŒμ— νŒŒμ΄μ–΄λ³Όμ€ 각자 μœ„μΉ˜μ—μ„œ 이동을 λŒ€κΈ° i번 νŒŒμ΄μ–΄λ³Όμ˜ μœ„μΉ˜λŠ” (ri, ci), μ§ˆλŸ‰μ€ mi이고, λ°©ν–₯은 di, 속λ ₯은 si 격자의 ν–‰κ³Ό 열은 1λ²ˆλΆ€ν„° Nλ²ˆκΉŒμ§€ 번호 νŒŒμ΄μ–΄λ³Όμ˜ λ°©ν–₯은 μ–΄λ–€ μΉΈκ³Ό μΈμ ‘ν•œ 8개의 칸의 λ°©ν–₯ (↑β†—→β†˜↓↙←β†–) λ§ˆλ²•μ‚¬ 상어가 λͺ¨λ“  νŒŒμ΄μ–΄λ³Όμ—κ²Œ 이동을 λͺ…λ Ή 1. λͺ¨λ“  νŒŒμ΄μ–΄λ³Όμ΄ μžμ‹ μ˜ λ°©ν–₯ di둜 속λ ₯ siμΉΈ 만큼 이동 μ΄λ™ν•˜λŠ” μ€‘μ—λŠ” 같은 칸에 μ—¬λŸ¬ 개의 νŒŒμ΄μ–΄λ³Όμ΄ μžˆμ„ μˆ˜λ„ 있음 2. 이동이 λͺ¨λ‘ λλ‚œ λ’€, 2개 μ΄μƒμ˜ νŒŒμ΄μ–΄λ³Όμ΄ μžˆλŠ” μΉΈμ—μ„œμ˜ 경우 a. 같은 칸에 μžˆλŠ” νŒŒμ΄μ–΄λ³Όμ€ λͺ¨λ‘ ν•˜λ‚˜λ‘œ 합쳐짐 b. νŒŒμ΄μ–΄λ³Όμ€ 4개의 νŒŒμ΄μ–΄λ³Όλ‘œ λ‚˜λˆ„μ–΄μ§ c. λ‚˜λˆ„μ–΄μ§„ νŒŒμ΄μ–΄λ³Όμ˜ μ§ˆλŸ‰, 속λ ₯, ..

[BAEKJOON python] 17837_μƒˆλ‘œμš΄ κ²Œμž„ 2

μƒˆλ‘œμš΄ κ²Œμž„ 2 크기가 N×N인 μ²΄μŠ€νŒμ—μ„œ μ§„ν–‰λ˜κ³ , μ‚¬μš©ν•˜λŠ” 말의 κ°œμˆ˜λŠ” K개 말은 μ›νŒλͺ¨μ–‘이고, ν•˜λ‚˜μ˜ 말 μœ„μ— λ‹€λ₯Έ 말을 올릴 수 있음 체슀판의 각 칸은 흰색, 빨간색, νŒŒλž€μƒ‰ 쀑 ν•˜λ‚˜ κ²Œμž„μ€ 체슀판 μœ„μ— 말 K개λ₯Ό 놓고 μ‹œμž‘ 말은 1λ²ˆλΆ€ν„° Kλ²ˆκΉŒμ§€ 번호 + 이동 λ°©ν–₯ (μœ„, μ•„λž˜, μ™Όμͺ½, 였λ₯Έμͺ½) ν„΄ ν•œ λ²ˆμ€ 1번 말뢀터 K번 λ§κΉŒμ§€ μˆœμ„œλŒ€λ‘œ μ΄λ™μ‹œν‚€λŠ” 것 ν•œ 말이 이동할 λ•Œ μœ„μ— 올렀져 μžˆλŠ” 말도 ν•¨κ»˜ 이동 말의 이동 λ°©ν–₯에 μžˆλŠ” 칸에 λ”°λΌμ„œ 말의 이동이 닀름 턴이 μ§„ν–‰λ˜λ˜ 쀑에 말이 4개 이상 μŒ“μ΄λŠ” μˆœκ°„ κ²Œμž„μ΄ μ’…λ£Œ 1. 흰색인 κ²½μš°μ—λŠ” κ·Έ 칸으둜 이동 μ΄λ™ν•˜λ €λŠ” 칸에 말이 이미 μžˆλŠ” κ²½μš°μ—λŠ” κ°€μž₯ μœ„μ— A번 말을 μ˜¬λ €λ†“κΈ° A번 말의 μœ„μ— λ‹€λ₯Έ 말이 μžˆλŠ” κ²½μš°μ—λŠ” A번 말과 μœ„μ— μžˆλŠ” λͺ¨λ“  ..

[BAEKJOON python] 17142_μ—°κ΅¬μ†Œ 3

μ—°κ΅¬μ†Œ 3 λ°”μ΄λŸ¬μŠ€λŠ” ν™œμ„± μƒνƒœμ™€ λΉ„ν™œμ„± μƒνƒœ κ°€μž₯ μ²˜μŒμ— λͺ¨λ“  λ°”μ΄λŸ¬μŠ€λŠ” λΉ„ν™œμ„± μƒνƒœ ν™œμ„± μƒνƒœμΈ λ°”μ΄λŸ¬μŠ€λŠ” μƒν•˜μ’Œμš°λ‘œ μΈμ ‘ν•œ λͺ¨λ“  빈 칸으둜 λ™μ‹œμ— 볡제되며, 1μ΄ˆκ°€ κ±Έλ¦Ό μ—°κ΅¬μ†Œμ˜ λ°”μ΄λŸ¬μŠ€ M개λ₯Ό ν™œμ„± μƒνƒœλ‘œ λ³€κ²½ν•˜λ €κ³  함 μ—°κ΅¬μ†ŒλŠ” 크기가 N×N인 μ •μ‚¬κ°ν˜• (1×1 크기의 μ •μ‚¬κ°ν˜•μœΌλ‘œ λ‚˜λ‰¨) μ—°κ΅¬μ†ŒλŠ” 0은 빈 μΉΈ, 1은 λ²½, 2λŠ” λ°”μ΄λŸ¬μŠ€μ˜ μœ„μΉ˜ ν™œμ„± λ°”μ΄λŸ¬μŠ€κ°€ λΉ„ν™œμ„± λ°”μ΄λŸ¬μŠ€κ°€ μžˆλŠ” 칸으둜 κ°€λ©΄ λΉ„ν™œμ„± λ°”μ΄λŸ¬μŠ€κ°€ ν™œμ„±μœΌλ‘œ 변함 μ—°κ΅¬μ†Œμ˜ μƒνƒœκ°€ μ£Όμ–΄μ‘Œμ„ λ•Œ, λͺ¨λ“  빈 칸에 λ°”μ΄λŸ¬μŠ€λ₯Ό νΌλœ¨λ¦¬λŠ” μ΅œμ†Œ μ‹œκ°„ κ΅¬ν•˜ λ°”μ΄λŸ¬μŠ€λ₯Ό μ–΄λ–»κ²Œ 놓아도 λͺ¨λ“  빈 칸에 λ°”μ΄λŸ¬μŠ€λ₯Ό 퍼뜨릴 수 μ—†λŠ” κ²½μš°μ—λŠ” -1을 좜λ ₯ν•œλ‹€. 첫째 쀄에 μ—°κ΅¬μ†Œμ˜ 크기 N(4 ≤ N ≤ 50), 놓을 수 μžˆλŠ” λ°”μ΄λŸ¬μŠ€μ˜ 개수 M(1 ≤ M ≤ 1..

[BAEKJOON python] 17143_λ‚šμ‹œμ™•

λ‚šμ‹œμ™•μ€ κ°€μž₯ 였λ₯Έμͺ½ μ—΄μ˜ 였λ₯Έμͺ½ 칸에 μ΄λ™ν•˜λ©΄ 이동을 멈좀 1초 λ™μ•ˆ μΌμ–΄λ‚˜λŠ” 일 1. λ‚šμ‹œμ™•μ΄ 였λ₯Έμͺ½μœΌλ‘œ ν•œ μΉΈ 이동 2. λ‚šμ‹œμ™•μ΄ μžˆλŠ” 열에 μžˆλŠ” 상어 μ€‘μ—μ„œ λ•…κ³Ό 제일 κ°€κΉŒμš΄ 상어λ₯Ό 작음 상어λ₯Ό 작으면 κ²©μžνŒμ—μ„œ μž‘μ€ 상어가 사라짐 3. 상어가 이동 μƒμ–΄λŠ” μž…λ ₯으둜 주어진 μ†λ„λ‘œ μ΄λ™ν•˜κ³ , μ†λ„μ˜ λ‹¨μœ„λŠ” μΉΈ/초 격자판의 경계λ₯Ό λ„˜λŠ” κ²½μš°μ—λŠ” λ°©ν–₯을 λ°˜λŒ€λ‘œ λ°”κΏ”μ„œ 속λ ₯을 μœ μ§€ν•œμ±„λ‘œ 이동 상어가 이동을 마친 후에 ν•œ 칸에 상어가 두 마리 이상 μžˆμ„ 수 있음 크기가 κ°€μž₯ 큰 상어가 λ‚˜λ¨Έμ§€ 상어λ₯Ό λͺ¨λ‘ μž‘μ•„λ¨ΉμŒ λ‚šμ‹œμ™•μ΄ 상어 λ‚šμ‹œλ₯Ό ν•˜λŠ” 격자판의 μƒνƒœκ°€ μ£Όμ–΄μ‘Œμ„ λ•Œ, λ‚šμ‹œμ™•μ΄ μž‘μ€ 상어 크기의 ν•© 첫째 쀄에 격자판의 크기 R, C와 μƒμ–΄μ˜ 수 M λ‘˜μ§Έ 쀄뢀터 M개의 쀄에 μƒμ–΄μ˜ 정보 (r, c)λŠ” μƒμ–΄μ˜..

[아두이노] λΈ”λ£¨νˆ¬μŠ€ ν†΅μ‹ ν•˜κΈ° - μ†Œν”„νŠΈμ›¨μ–΄ μ‹œλ¦¬μ–Ό & λΈ”λ£¨νˆ¬μŠ€ 톡신 λͺ¨λ“ˆ

(μ½”λ“œλŠ” μ €μž‘κΆŒμƒ 곡유 μ•ˆλ©λ‹ˆλ‹Ή!!) πŸ₯‘ μ†Œν”„νŠΈμ›¨μ–΄ μ‹œλ¦¬μ–Ό : μ‹œλ¦¬μ–Ό 톡신 μ§€μ›ν•˜λŠ” 포트(0, 1) : SoftwareSerial 라이브러리 톡해 μ†Œν”„νŠΈμ›¨μ–΄λ‘œ κ°€μƒμ˜ μ‹œλ¦¬μ–Ό 포트 μƒμ„±ν•˜μ–΄ μ‹œλ¦¬μ–Ό 톡신 κ°€λŠ₯ πŸ” SoftwareSerial #influde // rxPin : μˆ˜μ‹ ν•  ν•€, txPin : 솑신할 ν•€ SoftwareSerial mySerial(rxPin, txPin); πŸ₯‘ λΈ”λ£¨νˆ¬μŠ€ 톡신 λͺ¨λ“ˆ πŸ” λΈ”λ£¨νˆ¬μŠ€ : 근거리 무선 톡신을 μœ„ν•œ ν‘œμ€€ : 저가격, μ €μ „λ ₯ 톡신 방법 : 10m 이내에 짧은 거리 톡신 μœ„ν•œ 기술 πŸ” HC-06 : μ‹œλ¦¬μ–Ό 톡신 ν™œμš©μœ„ν•΄ 연동해야함 : SoftwareSerial둜 디지털 2, 3번 핀을 μ‹œλ¦¬μ–Ό 포트둜 μƒμ„±ν•˜κ³  μ‚¬μš© : λͺ¨λ“ˆ μ„€μ •ν•˜λŠ” μž‘μ—… ν•„μš” (λͺ…λ Ή λͺ¨λ“œλ‘œ μ§„μž…ν•˜μ—¬ λΈ”..

[아두이노] λ©€ν‹° νƒœμŠ€ν‚Ή ν•˜κΈ° - millis() & μΈν„°λŸ½νŠΈ & 타이머

(μ½”λ“œλŠ” μ €μž‘κΆŒμƒ 곡유 μ•ˆλ©λ‹ˆλ‹Ή!!) πŸ₯‘ delay 없이 μž‘μ—… μˆ˜ν–‰ : μ›λž˜ μž‘μ—… λ‹€μŒμ— delay μ£Όκ³  loop 내에 κ΅¬μ„±ν•˜λ©΄ 주기적으둜 μž‘μ—… μˆ˜ν–‰ κ°€λŠ₯ πŸ” millis() ν•¨μˆ˜ unsigned long time = millis(); : 아두이노가 ν”„λ‘œκ·Έλž¨μ„ μ‹œμž‘ν•œ λ’€ 경과된 μ‹œκ°„μ„ ms λ‹¨μœ„λ‘œ λ³€ν™˜ : delay 없이 주기적인 λ™μž‘ μˆ˜ν–‰ κ°€λŠ₯ : μ‹œκ°„ κ²½κ³Ό 쑰건 λ§Œμ‘±ν•  λ•Œλ§Œ μž‘μ—… μˆ˜ν–‰ν•¨ πŸ₯‘ 아두이노 λ©ˆμΆ”μ§€ 말기 : λ©ˆμΆ”μ§€ μ•Šκ³  LEDλ₯Ό 깜빑이기 μœ„ν•΄ millis ν•¨μˆ˜λ₯Ό ν™œμš©ν•˜κΈ° πŸ₯‘ μΈν„°λŸ½νŠΈ : μ‹€ν–‰ 쀑인 ν”„λ‘œκ·Έλž¨μ—μ„œ μ¦‰μ‹œ μ²˜λ¦¬ν•΄μ•Ό ν•  ν”„λ‘œκ·Έλž¨μ΄ λ°œμƒλ˜λŠ” 것 : μ‹€ν–‰ 쀑인 ν”„λ‘œκ·Έλž¨μ„ μ€‘λ‹¨ν•˜κ³  μ¦‰μ‹œ μ‹€ν–‰ν•΄μ•Ό ν•  ν”„λ‘œκ·Έλž¨ μˆ˜ν–‰ // μΈν„°λŸ½νŠΈκ°€ λ°œμƒν–ˆμ„ λ•Œ 싀행될 callback ν•¨μˆ˜ attachInterr..