[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] Lv1. ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ์ˆซ์ž ๋ฐฐ์—ด

2022. 10. 4. 11:50ใ†์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค_2022

728x90

๋ฌธ์ œ ์„ค๋ช…

array์˜ ๊ฐ element ์ค‘ divisor๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ๊ฐ’์„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”.
divisor๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” element๊ฐ€ ํ•˜๋‚˜๋„ ์—†๋‹ค๋ฉด ๋ฐฐ์—ด์— -1์„ ๋‹ด์•„ ๋ฐ˜ํ™˜ํ•˜์„ธ์š”.

์ œํ•œ์‚ฌํ•ญ
  • arr์€ ์ž์—ฐ์ˆ˜๋ฅผ ๋‹ด์€ ๋ฐฐ์—ด์ž…๋‹ˆ๋‹ค.
  • ์ •์ˆ˜ i, j์— ๋Œ€ํ•ด i ≠ j ์ด๋ฉด arr[i] ≠ arr[j] ์ž…๋‹ˆ๋‹ค.
  • divisor๋Š” ์ž์—ฐ์ˆ˜์ž…๋‹ˆ๋‹ค.
  • array๋Š” ๊ธธ์ด 1 ์ด์ƒ์ธ ๋ฐฐ์—ด์ž…๋‹ˆ๋‹ค.
์ž…์ถœ๋ ฅ ์˜ˆ
arr                                                                             divisor                   return
[5, 9, 7, 10] 5 [5, 10]
[2, 36, 1, 3] 1 [1, 2, 3, 36]
[3,2,6] 10 [-1]
์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช…

์ž…์ถœ๋ ฅ ์˜ˆ#1
arr์˜ ์›์†Œ ์ค‘ 5๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ์›์†Œ๋Š” 5์™€ 10์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ [5, 10]์„ ๋ฆฌํ„ดํ•ฉ๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ#2
arr์˜ ๋ชจ๋“  ์›์†Œ๋Š” 1์œผ๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง‘๋‹ˆ๋‹ค. ์›์†Œ๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•ด [1, 2, 3, 36]์„ ๋ฆฌํ„ดํ•ฉ๋‹ˆ๋‹ค.

 

์ž…์ถœ๋ ฅ ์˜ˆ#3
3, 2, 6์€ 10์œผ๋กœ ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‚˜๋ˆ„์–ด ๋–จ์–ด์ง€๋Š” ์›์†Œ๊ฐ€ ์—†์œผ๋ฏ€๋กœ [-1]์„ ๋ฆฌํ„ดํ•ฉ๋‹ˆ๋‹ค.

 

 

๋‚˜์˜ ํ’€์ด

์•„ ๋ญ”๊ฐ€ ๋˜๊ฒŒ ์ง€์ €๋ถ„ํ•˜๊ฒŒ ํ‘ผ ๊ธฐ๋ถ„.. 

์ผ๋‹จ int ๋ฐฐ์—ด์— size๋ฅผ ๋ฏธ๋ฆฌ ์•Œ๊ณ  ์ง€์ •ํ•ด์ค„ ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฒˆ์—๋„ Arraylist๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค. 

๊ทธ๋ฆฌ๊ณ  arr ๋ฐฐ์—ด์˜ ๊ฐ’์„ ํ•˜๋‚˜ํ•˜๋‚˜ divisor๋กœ ๋‚˜๋ˆˆ ๊ฐ’์ด 0์ธ ๊ฐ’๋“ค์„ arraylist์— ์ €์žฅํ•œ๋‹ค. 

 

๊ทธ๋ฆฌ๊ณ  ๋งŒ์•ฝ 0์œผ๋กœ ๋‚˜๋ˆ ์ง€๋Š” ๊ฐ’์ด ํ•˜๋‚˜๋„ ์—†๋‹ค๋ฉด arraylist ๊ฐ€ null์ผ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— -1 ๋ฅผ ๋ฆฌํ„ดํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋ฐฐ์—ด ์‚ฌ์ด์ฆˆ๋ฅผ 1๋กœ ์ดˆ๊ธฐํ™”ํ•˜๊ณ  -1๋ฅผ ๋‹ด์•„์ค€๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  arraylist๊ฐ€ null์ด ์•„๋‹ˆ๋ผ๋ฉด ์ด์ œ arraylist์— ๋‹ด๊ธด ๊ฐ’๋“ค์„ ๋ฐฐ์—ด์— ๋„ฃ์–ด์ฃผ๊ณ  ์ •๋ ฌํ•ด ๋ฆฌํ„ดํ•ด์ฃผ๋ฉด ๋์ด๋‹ค~ 

 

 

๋‹ค๋ฅธ ์‚ฌ๋žŒ ํ’€์ด

๋ญ”๊ฐ€ Arraylist๋ฅผ ์‰ฝ๊ฒŒ ๋ฐฐ์—ด๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฌด์–ธ๊ฐ€๊ฐ€ ์žˆ์„๊ฒƒ ๊ฐ™๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋Š”๋ฐ 

์—ญ์‹œ ์ŠคํŠธ๋ฆผ์ด ์žˆ์—ˆ๋‹ค. 

mapToInt๋ฅผ ํ†ตํ•ด์„œ ์ŠคํŠธ๋ฆผ์„ intStream์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ๊ณ  ์ด๋ฅผ toArray๋ฅผ ํ•˜๋ฉด ๋ฐฐ์—ด๋กœ ๋ณ€ํ™˜๋˜๋‚˜๋ณด๋‹ค..!

 

 

 

๊ทธ๋ฆฌ๊ณ  ๋” ๊น”๋”ํ•œ ๋ฐฉ๋ฒ•..

์ฝ”๋“œ ๋ช‡์ค„๋กœ ์ด๊ฒŒ ๋๋‚˜๋‹ค๋‹ˆ ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹ํใ… ใ…  

์•„๋ฌดํŠผ... Stream์„ ์‚ฌ์šฉํ•ด์„œ filter๋กœ ๊ฑธ๋Ÿฌ์ฃผ๊ณ  ์ด๋ฅผ ๋ฐฐ์—ด๋กœ ๋ณ€ํ™˜ํ–ˆ๋‹ค..!! 

๋žŒ๋‹ค ์ž˜ ์‚ฌ์šฉํ• ์ค„ ์•Œ์•„์•ผํ•˜๋Š”๋ฐ..๋ฅผ ๋Š๋ผ๊ณ  ๋‹ค์‹œ..ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹ใ…‹ํใ…  

 

๊ทผ๋ฐ ์‹คํ–‰ ์†๋„๋ฅผ ๋ณด๋ฉด ์ŠคํŠธ๋ฆผ์„ ์จ์„œ ๊ทธ๋Ÿฐ๊ฐ€ ํ™•์‹คํžˆ ๋” ๋Š๋ฆฐ๊ฑธ ์•Œ ์ˆ˜ ์žˆ๋‹ค..!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90