๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Algorithm/Etc

[๊ตฌ๊ธ€์ฝ”ํ…Œ] GOCC48 - Coding - SWE Intern (Seoul) questions1, 2

by yunamom 2022. 4. 9.
728x90
300x250

์•ˆ๋…•ํ•˜์„ธ์š” yunamom ์ž…๋‹ˆ๋‹ค ๐Ÿ˜Š

 

Google’s Online Challenge [LIVE @ 09:00 KST]

 

GOCC48 - Coding - SWE Intern (Seoul) ๋ฌธ์ œ1 / ๋ฌธ์ œ2 ํฌ์ŠคํŒ…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค :D

 

์ผ์ฃผ์ผ์ „์— ๋ฐ›์€ ๊ตฌ๊ธ€ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ์•„์ด๋””/๋น„๋ฐ€๋ฒˆํ˜ธ , ํ…Œ์ŠคํŠธ ์ „์— ๋ฏธ๋ฆฌ ๊ฐ€์ž…์„ ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.
Google's Online Challenge 2022
Enter Test ๋ฅผ ๋ˆ„๋ฅด๋ฉด ๋ฐ”๋กœ ์ž…์žฅ/์‹œ๊ฐ„(60๋ถ„) ์ด ์นด์šดํŠธ ๋ฉ๋‹ˆ๋‹ค.
์ง€๋ฌธ ๋ณต์‚ฌX / ์ฝ”๋“œ๋ธ”๋Ÿญ ๋ถ™์—ฌ๋„ฃ๊ธฐX

๊ตฌ๊ธ€์ฝ”๋ฆฌ์•„ ์ง€๋งŒ ๋ชจ๋“  ๊ณผ์ •์€ ์˜์–ด๋‹ค!

 

๋‹ค๋ฅธ ํ™”๋ฉด ํด๋ฆญ์‹œ ๋ฐ”๋กœ ํ™”๋ฉด์ดํƒˆํ•˜๋ฉด ๋กœ๊ทธ์•„์›ƒ๋œ๋‹ค๊ตฌ ๊ฒฝ๊ณ ์ฐฝ์ด ๋œฌ๋‹ค.

(๋ฌธ์ œ ๋ณต์‚ฌ X, ์ฝ”๋“œ๋ธ”๋Ÿญ์— ๋ณต๋ถ™๋„ X, ๋“€์–ผ๋ชจ๋‹ˆํ„ฐ X)

 

๐Ÿ“– ๋ฌธ์ œ 1.

๋ฌธ์ œ1 ์„ค๋ช…

 

๋ฌธ์ œ1 ์„ค๋ช…
๋ฌธ์ œ1 ์„ค๋ช…

 

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๋ณธ ์‚ฌ์ดํŠธ๋Š” Hackerearth ์ž…๋‹ˆ๋‹ค.

 

 LeetCode ๋Š” ๋งŽ์ด ๋“ค์–ด๋ณด์•˜๋Š”๋ฐ Hackerearth ์ด๊ณณ์€ ์ด๋ฒˆ์— ์ฒ˜์Œ๋ดค๋‹ค..

 


๐Ÿ“– ๋ฌธ์ œ 2.

๋ฌธ์ œ2 ์„ค๋ช…
๋ฌธ์ œ 2 ์„ค๋ช…
๋ฌธ์ œ 2 ์„ค๋ช…

 

๋ฌธ์ œ2 ๊ฐ™์€ ๊ฒฝ์šฐ์—๋Š” ํ’€์ด๋ฅผ ํ•˜์ž๋ฉด, ๋‘๋ฐฐ์—ด์„ ํ•ฉ์นœํ›„ ์ œ์ผํฐ์ˆ˜, ์ œ์ผ์ž‘์€์ˆ˜ ์„ ๊ตฌํ•œ๋’ค์—

 

max = 1+(์ œ์ผํฐ์ˆ˜*๋ฐฐ์—ด๊ธธ์ด-1);

min = 1+(์ œ์ผ์ž‘์€์ˆ˜*๋ฐฐ์—ด๊ธธ์ด-1);

 

๊ทธ๋ฆฌ๊ณ  max ์—์„œ min ์„ ๋นผ์ฃผ๋ฉด ์™„๋ฃŒ.

 

๊ทธ๋Ÿฐ๋ฐ ๋‚˜๋Š” ๋˜ ๋‹ค๋ฅธ๋ฐ์„œ ๐Ÿชด์‚ฝ์งˆํ•˜๋Š๋ผ ์‹œ๊ฐ„ ๋‹ค๊ฐ”๋‹ค.

 

์ € ๋ฐฐ์—ด ๋„ฃ๋Š”๊ฑฐ์— ๊ฝ‚ํ˜€๊ฐ€์ง€๊ตฌ ใ… ใ…  ์œ„์— ์ง€๋ฌธ์„ ๋ณด๋ฉด

int N = 3;
int[] A = {1,2,3};
int M = 2;
int[] B = {4,1};

/* ํ•ฉ์ณ์ง„ ๋ฐฐ์—ด */
int[] S = {1,4,1,2,3};

์ด๋ ‡๊ฒŒ ์žˆ๋Š”๋ฐ ์•„๋‹ˆ ๋ˆˆ์ด ์–ด๋–ป๊ฒŒ ๋ฌ๋‚˜??

 

๋ฐฐ์—ด์„ ๊ผญ ์ €๋ ‡๊ฒŒ ๋„ฃ์–ด์•ผ ํ•˜๋Š”์ค„์•Œ๊ณ  S[] = A[] ๋„ฃ๊ณ  S[] = B[] ๋„ฃ๋Š๋ผ ์‚ฝ์งˆํ•˜๊ณ  ์ค‘๊ฐ„์— ์‚ฌ์ดํŠธ ํŒ…๊น€ ํ—ˆํ—ˆ

๋‹ค์‹œ ์ ‘์†์ค‘

๋‹จ์ˆœํ•˜๊ฒŒ ์ƒ๊ฐํ•˜๋ฉด ๋ฌ์—ˆ๋‹ค. ( 7๋ถ„ ๋‚จ์Œ ใ„ทใ„ท)

 

์ƒˆ๋กœ์šด๋ฐฐ์—ด์— ๋ชฝ๋•…ํ•ฉ์ณ์ค€๋’ค Arrays.sort(S); ๋กœ ์ •๋ ฌํ•œ๋’ค ๊ฐ’์„ ํ™•์ธ [1, 1, 2, 3, 4]

2๋ถ„ ๋‚จ๊ธฐ๊ณ  ๋..

๐Ÿ‘‡๋ฐฐ์—ด๋กœ ์ž‘์„ฑํ•œ ์ฝ”๋“œ

package ๊ตฌ๊ธ€์ฝ”๋”ฉํ…Œ์ŠคํŠธ;

import java.util.Arrays;

class Solution{
	
	public long hybridMaximum(int N, int[] A, int M, int[] B) {
		// write your code here
		 int [] S = new int[A.length + B.length];
	        
	     int index = 0;
	     for(int i=0; i<A.length; i++){
	          S[i] = A[i]; index++;
	     }
	     for(int i=index,j=0; i<index+B.length; i++){
	          S[i] = B[j]; j++;
	     }      
	     
	     Arrays.sort(S);
	     long length = S.length-1;
	     long max = 1+(S[S.length-1] * length);       
	     long min = 1+(S[0] * length);
	        
	     return max-min;
	}
}

public class Algorithm {

	public static void main(String[] args) {
		/* ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž…๋‹ˆ๋‹ค. */
		int N = 3;
		int[] A = {1,2,3};
		int M = 2;
		int[] B = {4,1};
		
		Solution test = new Solution();
		System.out.println(test.hybridMaximum(N, A, M, B));
				
	}
}

 

๐Ÿ‘‡TreeMap ์œผ๋กœ ์ž‘์„ฑํ•œ ์ฝ”๋“œ ( *HashMap ๊ณผ ๋‹ฌ๋ฆฌ ํ•ญ์ƒ์ •๋ ฌ์ด ๋˜์–ด์žˆ๋‹ค. )

package ๊ตฌ๊ธ€์ฝ”๋”ฉํ…Œ์ŠคํŠธ;

import java.util.TreeMap;

class Solution2{
	
	public long hybridMaximum(int N, int[] A, int M, int[] B) {
		// write your code here
        long length = (A.length+B.length)-1;    
        
        TreeMap<Integer,Integer> map = new TreeMap<Integer,Integer>(){{
        	for(int e:A) put(e,e);
        	for(int e:B) put(e,e);  	
        }};  
       
        long max = map.lastKey();
        long min = map.firstKey();
       
        return 1+(max*length) - 1+(min*length);
	}
}

public class Algorithm2 {

	public static void main(String[] args) {
		/* ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž…๋‹ˆ๋‹ค. */
		int N = 1000;
		int[] A = new int[1000];
		for(int i=0; i<N; i++) {
			A[i] = i*9999;
		}
		int M = 1000;
		int[] B = new int[1000];
		for(int i=0; i<M; i++) {
			B[i] = i*9;
		}
	
		Solution2 test = new Solution2();
		System.out.println(test.hybridMaximum(N, A, M, B));
				
	}
}//19968012999

๐Ÿ’กint -> long ์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

 

์•„๋ž˜์™€ ๊ฐ™์ด ์•„์˜ˆ ๋‹ค๋ฅธ ๋‹ต์ด ๋‚˜์˜ฌ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ( *์˜ˆ์‹œ๋กœ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ๋„ฃ์–ด์„œ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.)

/* max ๊ฐ€ intํ˜• ์ผ๋•Œ */
max : -1506823480
min : 1
-1506823481

/* max ๊ฐ€ longํ˜• ์ผ๋•Œ*/
max : 19968013000
min : 1
19968012999

์ฒซ๋ฒˆ์งธ ๋ฌธ์ œ๋Š” ์ œ์ถœ๋„ ๋ชปํ•˜์˜€์ง€๋งŒ (์ถ”ํ›„์— ํ’€์ด๋ฅผ ์—…๋กœ๋“œํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค :D)

 

์•ž์œผ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณต๋ถ€๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ์ง€ ๋ฐฉํ–ฅ์„ฑ์„ ์ƒ๊ฐํ•˜๊ฒŒ๋œ ์ข‹์€ ๊ฒฝํ—˜์ด์˜€์Šต๋‹ˆ๋‹ค ๐Ÿ˜Š

 

๐Ÿ‘‡TreeMap ์ด๋ž€?

 

[JAVA] TreeMap ์‚ฌ์šฉ๋ฒ•

โœจ TreeMap ์ด๋ž€ ๋ฌด์—‡์ธ๊ฐ€์š”? TreeMap์€ ์ด์ง„ํŠธ๋ฆฌ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ Map ์ปฌ๋ ‰์…˜์ž…๋‹ˆ๋‹ค. ๊ฐ™์€ Tree๊ตฌ์กฐ๋กœ ์ด๋ฃจ์–ด์ง„ TreeSet๊ณผ์˜ ์ฐจ์ด์ ์€ TreeSet์€ ๊ทธ๋ƒฅ ๊ฐ’๋งŒ ์ €์žฅํ•œ๋‹ค๋ฉด TreeMap์€ ํ‚ค์™€ ๊ฐ’์ด ์ €์žฅ๋œ Map, Etnry๋ฅผ..

yunamom.tistory.com

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค (x๋งŒํผ ๊ฐ„๊ฒฉ์ด ์žˆ๋Š” n๊ฐœ์˜ ์ˆซ์ž)

๐Ÿ‘‡int -> long ์œผ๋กœ ๋ณ€ํ™˜ํ›„ ํ†ต๊ณผํ–ˆ๋˜ ๋ฌธ์ œ

 

[Java] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - x๋งŒํผ ๊ฐ„๊ฒฉ์ด ์žˆ๋Š” n๊ฐœ์˜ ์ˆซ์ž

๐Ÿ’ก๋ฌธ์ œ ์„ค๋ช… ํ•จ์ˆ˜ solution์€ ์ •์ˆ˜ x์™€ ์ž์—ฐ์ˆ˜ n์„ ์ž…๋ ฅ ๋ฐ›์•„, x๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด x์”ฉ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆซ์ž๋ฅผ n๊ฐœ ์ง€๋‹ˆ๋Š” ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ฆฌํ„ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ ์ œํ•œ ์กฐ๊ฑด์„ ๋ณด๊ณ , ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„

yunamom.tistory.com

๊ตฌ๊ธ€ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๋ฌธ์ œ ๋ชจ์Œ์‚ฌ์ดํŠธ : ๋งํฌ

728x90
300x250

์ฝ”๋“œ