오늘은 3차 모의 면접을 진행하는 날.. 어제 면접 날짜가 잡혀서 급하게 모의 면접 준비하면서 프론트까지 하려니까 시간이 너무 부족했다.. 내일까지 프론트 완성해야 하는데, 모의 면접 답변은 또 답변대로 잘 안 외워지고.. 부족한 시간이 흘러 면접 시간..! 오늘은 준비가 미흡해서 답변 외울 때 엄청 떨렸는데 막상 튜터님과 만나니까 언제 떨렸냐는 듯 평온해졌다. 이제 튜터님과의 친밀감이 올랐는지, 내가 느끼기에도 1차 모의 면접 때와 비교하면 아주 많이 발전한 것 같다..! 준비한 답변을 얘기할 때는 침착하게 아나운서처럼 잘 답변했다고, 오늘도 잘했다고 칭찬을 받았지만... 준비되지 않은 답변을 할 때 나의 어리바리한 모습을 보여주지 않기 위해 틈틈이 공부하라는 피드백을 받았다..🫡 (아야야.. 뼈를 맞았더니 꽤 아프네...🥲)
문제 : 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다.
각 유저는 한 번에 한 명의 유저를 신고할 수 있습니다.
신고 횟수에 제한은 없습니다. 서로 다른 유저를 계속해서 신고할 수 있습니다.
한 유저를 여러 번 신고할 수도 있지만, 동일한 유저에 대한 신고 횟수는 1회로 처리됩니다.
k번 이상 신고된 유저는 게시판 이용이 정지되며, 해당 유저를 신고한 모든 유저에게 정지 사실을 메일로 발송합니다.
유저가 신고한 모든 내용을 취합하여 마지막에 한꺼번에 게시판 이용 정지를 시키면서 정지 메일을 발송합니다.
import java.util.*;
class Solution {
public int[] solution(String[] id_list, String[] report, int k) {
int[] answer = new int[id_list.length];
ArrayList<String> list = new ArrayList<>();
Map<String, Integer> rpmap = new HashMap<>();
Arrays.stream(report).distinct().forEach((rp) -> {
String rplist[] = rp.split(" ");
int cnt = 1;
if(rpmap.containsKey(rplist[1]))
cnt = rpmap.get(rplist[1])+1;
rpmap.put(rplist[1],cnt);
list.add(rp);
});
for(String li:list) {
String[] liarr = li.split(" ");
if(rpmap.get(liarr[1]) >= k)
answer[Arrays.asList(id_list).indexOf(liarr[0])]++;
}
return answer;
}
}
OAuth에 대해서 설명해주세요.
클래스형과 함수형의 차이를 설명해주세요. 어떤 방식을 주로 사용하였고 그 이유가 뭔지 답변해주세요.