๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿงฉ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/๐Ÿต ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ’€์ด(Java)

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค_์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜?

by carrot0911 2024. 11. 17.

๋ฌธ์ œ ์„ค๋ช…

๊ธธ์ด๊ฐ€ n์ด๊ณ , "์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜๋ฐ•์ˆ˜...."์™€ ๊ฐ™์€ ํŒจํ„ด์„ ์œ ์ง€ํ•˜๋Š” ๋ฌธ์ž์—ด์„ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•˜์„ธ์š”. ์˜ˆ๋ฅผ๋“ค์–ด n์ด 4์ด๋ฉด "์ˆ˜๋ฐ•์ˆ˜๋ฐ•"์„ ๋ฆฌํ„ดํ•˜๊ณ  3์ด๋ผ๋ฉด "์ˆ˜๋ฐ•์ˆ˜"๋ฅผ ๋ฆฌํ„ดํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

https://school.programmers.co.kr/learn/courses/30/lessons/12922?language=java

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

SW๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํ‰๊ฐ€, ๊ต์œก, ์ฑ„์šฉ๊นŒ์ง€ Total Solution์„ ์ œ๊ณตํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์„ฑ์žฅ์„ ์œ„ํ•œ ๋ฒ ์ด์Šค์บ ํ”„

programmers.co.kr

์ œํ•œ ์‚ฌํ•ญ

  • n์€ ๊ธธ์ด 10,000 ์ดํ•˜์ธ ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ

n return
3 "์ˆ˜๋ฐ•์ˆ˜"
4 "์ˆ˜๋ฐ•์ˆ˜๋ฐ•"

 

๋‚ด๊ฐ€ ์ž‘์„ฑํ•œ ์ฝ”๋“œ

class Solution {
    public String solution(int n) {
        String answer = "";
        String watermelon = "์ˆ˜๋ฐ•".repeat(5000);
        
        answer = watermelon.substring(0, n);
        
        return answer;
    }
}

์ฝ”๋“œ ์„ค๋ช…

  • String watermelon = "์ˆ˜๋ฐ•".repeat(5000) : ๋ฌธ์ž์—ด watermelon์— "์ˆ˜๋ฐ•" ๋ฌธ์ž์—ด์„ 5000ํšŒ ๋ฐ˜๋ณตํ•ด์„œ ์ €์žฅํ•œ๋‹ค.
  • anwer = watermelon.substring(0, n) : ๋ณ€์ˆ˜ anwer์— watermelon์˜ 0๋ถ€ํ„ฐ n-1๊นŒ์ง€์˜ ๋ฌธ์ž์—ด์„ ์ €์žฅํ•œ๋‹ค.

repeat(int n)

public String repeat(int count)
  • count : ๋ฌธ์ž์—ด์„ ๋ฐ˜๋ณตํ•  ํšŸ์ˆ˜๋ฅผ ์ •ํ•œ๋‹ค.
  • count ๊ฐ’์— ์Œ์ˆ˜๊ฐ€ ์ž…๋ ฅ๋˜๋ฉด IllegalArgumentException์ด ๋ฐœ์ƒํ•œ๋‹ค.

Substring(int beginIndex, int endIndex)

public String substring(int beginIndex)
public String substring(int beginIndex, int endIndex)
  • ์ง€์ •ํ•œ ์‹œ์ž‘ ์ธ๋ฑ์Šค๋ถ€ํ„ฐ ๋๊นŒ์ง€์˜ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  • ์ง€์ •ํ•œ ์‹œ์ž‘ ์ธ๋ฑ์Šค๋ถ€ํ„ฐ ๋ ์ธ๋ฑ์Šค ๋ฐ”๋กœ ์•ž๊นŒ์ง€์˜ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  • beginIndex : ๋ฌธ์ž์—ด์˜ ์‹œ์ž‘ ์œ„์น˜๋ฅผ ์ง€์ •ํ•œ๋‹ค.
  • endIndex : ๋ฌธ์ž์—ด์˜ ๋งˆ์ง€๋ง‰ ์œ„์น˜๋ฅผ ์ง€์ •ํ•œ๋‹ค. (์‹ค์ œ๋กœ๋Š” endIndex - 1 ์œ„์น˜๊นŒ์ง€๋งŒ ๊ฐ€์ ธ์˜จ๋‹ค.)