Home > Archive > Post > πŸ“[blog post] μ—°μŠ΅ 문제 풀이 정리(1)

πŸ“[blog post] μ—°μŠ΅ 문제 풀이 정리(1)
Java Programming Language Backend blogging

1️⃣ 이쀑 for λ¬Έ.

이쀑 for 문은 for 문을 μ€‘μ²©ν•΄μ„œ μ‚¬μš©ν•˜λŠ” 것을 λ§ν•©λ‹ˆλ‹€.

ν•œ for λ¬Έ μ•ˆμ— 또 λ‹€λ₯Έ for λ¬Έ μ•ˆμ— 또 λ‹€λ₯Έ for 문이 λ“€μ–΄μžˆλŠ” ꡬ쑰둜, 주둜 2차원 λ°°μ—΄μ΄λ‚˜ 리슀트, 행렬을 μ²˜λ¦¬ν•  λ•Œ μ‚¬μš©λ©λ‹ˆλ‹€.

1.1 기본 ꡬ쑰.

for (μ΄ˆκΈ°ν™”1; 쑰건1; 증감1) {
    for (μ΄ˆκΈ°ν™”2; 쑰건2; 증감2) {
        // μ½”λ“œ 블둝
    }
}

1.2 μ˜ˆμ‹œ

예λ₯Ό λ“€μ–΄, 2차원 리슀트의 λͺ¨λ“  μš”μ†Œλ₯Ό 좜λ ₯ν•˜λŠ” 경우λ₯Ό 생각해 λ΄…μ‹œλ‹€.

public class Main {
    public static void main(Stringp[] args) {
        int[][] matrix = {
            {1, 2, 3},
            {4, 5, 6},
            {7, 8, 9}
        };
        
        for (int[] row : matrix) {
            for (int element : row) {
                System.out.println(element);
            }
        }
    }
}
  • μœ„ μ½”λ“œμ—μ„œ β€˜matrix’ λŠ” 2차원 λ¦¬μŠ€νŠΈμž…λ‹ˆλ‹€.
    • 첫 번째 for 문은 β€˜matrix’ 의 각 ν–‰(row)을 μˆœνšŒν•˜κ³ , 두 번째 for 문은 κ°ν–‰μ˜ μš”μ†Œ(element)λ₯Ό μˆœνšŒν•©λ‹ˆλ‹€.

좜λ ₯ κ²°κ³ΌλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

1
2
3
4
5
6
7
8
9

2️⃣ κ·œμΉ™μ„±μ„ μ°ΎλŠ” 것이 μ€‘μš”!

μ–΄λ–€ 문제λ₯Ό 마주치면 κ·œμΉ™μ„±μ„ μ°ΎλŠ” 것이 μ€‘μš”ν•œ 것 κ°™μŠ΅λ‹ˆλ‹€.
μ—°μŠ΅ 문제 2-1 쀑 β€˜μ •μˆ˜ν˜• 숫자λ₯Ό 둜마 숫자 ν‘œκΈ°λ‘œ λ³€ν™˜ν•˜λŠ” ν”„λ‘œκ·Έλž¨β€™ 을 μž‘μ„±ν•˜λŠ” λ¬Έμ œμ—μ„œ 그것을 κΉ¨λ‹¬μ•˜μŠ΅λ‹ˆλ‹€.

λ¨Όμ € μ–΄λ–€ κ·œμΉ™μ„±μ΄ μžˆλŠ”μ§€ μ°Ύμ•„λ‚Έ ν›„ κ·Έ κ·œμΉ™μ„±μ— 따라 문제λ₯Ό ν’€κ³ , 문제λ₯Ό 컴퓨터적 사고λ ₯을 μ΄μš©ν•˜μ—¬ 코딩을 ν•˜λ‹ˆ λ¬Έμ œκ°€ ν’€λ¦¬λŠ” 것을 μ•Œκ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

3️⃣ 인덱슀λ₯Ό 자유자재둜 κ°€μ§€κ³  놀 쀄 μ•Œμ•„μ•Ό ν•©λ‹ˆλ‹€!

μ—°μŠ΅ 문제λ₯Ό ν’€λ©΄μ„œ λŠλ‚€ 점 쀑 ν•˜λ‚˜κ°€ β€œμΈλ±μŠ€λ₯Ό 자유자재둜 κ°€μ§€κ³  놀 쀄 μ•Œμ•„μ•Ό ν•œλ‹€β€ λŠ” λΆ€λΆ„μ΄μ—ˆμŠ΅λ‹ˆλ‹€.

β€œμΈλ±μŠ€λ₯Ό 자유자재둜 κ°€μ§€κ³  논닀” λΌλŠ” 말은 λ¬Έμžμ—΄μ΄ μ£Όμ–΄μ§€λ©΄ 인덱슀λ₯Ό ν™œμš©ν•˜μ—¬ 문자λ₯Ό μ‚½μž…, μ‚­μ œ, μΆ”μΆœ, λ³€ν™˜ 등을 자유둭게 ν•  쀄 μ•Œμ•„μ•Ό ν•œλ‹€λŠ” μ˜λ―Έμž…λ‹ˆλ‹€.

μ—°μŠ΅ 문제 쀑 λ¬Έμžμ—΄μ— λŒ€ν•œ λ¬Έμ œλŠ” 이 뢀뢄이 κ°€μž₯ μ€‘μš”μ‹œλ˜λŠ” 것 κ°™μ•˜μŠ΅λ‹ˆλ‹€.