๐ŸŒท๐ŸŒผ๋ชจ์—ฌ๋ด์š” ๊ฐœ๋ฐœ์˜์ˆฒ๐ŸŒท๐ŸŒผ

[JAVA] ์ •์ˆ˜ ์ œ๊ณฑ๊ทผ ํŒ๋ณ„ ๋ณธ๋ฌธ

๊ฐœ๋ฐœ/์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ’€์ด JAVA

[JAVA] ์ •์ˆ˜ ์ œ๊ณฑ๊ทผ ํŒ๋ณ„

์š”์ผ์ด 2023. 1. 4. 18:14
๋ฐ˜์‘ํ˜•

๋ฌธ์ œ

https://school.programmers.co.kr/learn/courses/30/lessons/12934

 

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

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

 

์ •๋‹ต(100)

import java.util.*;

class Solution {
   public long solution(long n) {
        long answer = -1;
        long tmp  = (long) Math.sqrt(n);
        if(tmp*tmp == n && tmp > 0){
            answer = (tmp+1) * (tmp+1);
        }

        return answer;
    }
}

 

์ฒซ๋ฒˆ์งธ ์‹œ๋„(61.1)

import java.util.*;

	class Solution {
		  public long solution(long n) {
			long answer = -1;
			for(int i=1; i*i<=n; i++){
				if(i*i == n){
					answer = (i+1) * (i+1);
				}
			}
			return answer;
		}
	}

- ์ฒ˜์Œ์—๋Š” ์†๋„ for๋ฌธ์˜ ์†๋„๋ฌธ์ œ์ธ๊ฐ€? ์‹ถ์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋‚˜์ค‘์— ์ •๋‹ต์„ ํ‘ผ ํ›„์— for๋ฌธ์•ˆ์˜ i๋ฅผ long์œผ๋กœ ๋ฐ”๊ฟ”์•ผ ํ•œ๋‹ค๋Š” ์‚ฌ์‹ค์„ ์•Œ๊ณ  ๋‚œ ํ›„ ์‹œ๋„ ํ•ด๋ดค๋”๋‹ˆ 100์ ์ด ๋‚˜์™”๋‹ค.

 

์ฒซ๋ฒˆ์งธ ์‹œ๋„์˜ ์ •๋‹ต(100)

import java.util.*;

	class Solution {
		  public long solution(long n) {
			long answer = -1;
			for(long i=1; i*i<=n; i++){
				if(i*i == n){
					answer = (i+1) * (i+1);
				}
			}
			return answer;
		}
	}

 

 

๋‘๋ฒˆ์งธ ์‹œ๋„(61.1)

import java.util.*;

class Solution {
      public long solution(long n) {
        long answer = -1;
        int tmp  = (int) Math.sqrt(n);
        if(tmp*tmp == n){
            answer = (tmp+1) * (tmp+1);
        }

        return answer;
    }
}

- ์ฒซ๋ฒˆ์งธ ์‹œ๋„์™€ ๋‹ค๋ฅด๊ฒŒ Math.sqrt๋ฅผ ํ†ตํ•ด ์ œ๊ณฑ๊ทผ์„ ๊ตฌํ•œ ํ›„ ์‹œ๋„ ํ•˜์˜€์ง€๋งŒ ์ฒซ๋ฒˆ์งธ ์‹œ๋„์™€ ๊ฐ™์€ ์ ์ˆ˜๊ฐ€ ๋‚˜์™”๋‹ค. ๋ญ๊ฐ€ ๋ฌธ์ œ์ผ์ง€ ์ƒ๊ฐํ•ด ๋ณด๋‹ˆ ๋ฌธ์ œ์˜ ์ œํ•œ์‚ฌํ•ญ์— ๋ณด๋‹ˆ

  • n์€ 1์ด์ƒ, 50000000000000 ์ดํ•˜์ธ ์–‘์˜ ์ •์ˆ˜์ž…๋‹ˆ๋‹ค.

๋ผ๊ณ  ์“ฐ์—ฌ์ ธ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค. int๋กœ๋Š” ์ œ๊ณฑ๊ทผ์ด ๋‚˜์˜ฌ์ˆ˜ ์—†๋Š” ํฐ ์–‘์˜ ์ •์ˆ˜์ด๊ธฐ ๋•Œ๋ฌธ์— ์ œ๊ณฑ๊ทผ๋„ ๋ฐ์ดํ„ฐ ์œ ํ˜•์„ long์œผ๋กœ ์žก์•„์•ผ ํ•œ๋‹ค๊ณ  ๋Š๋‚€ํ›„ ๋‹ค์‹œ ์‹œ๋„ํ•ด ๋ณธ ํ›„ ์ •๋‹ต์ด ๋‚˜์™”๋‹ค. (์ •๋‹ต์€ ๋งจ ์œ„์— ์žˆ์Œ)

Comments