내일배움캠프 77일차

Drumj·2022년 8월 5일
0

내일배움캠프

목록 보기
78/80

<오늘의 학습>

이모저모 알아보자!

에라토스테네스의 체

???? 뭐??? 뭔체??? 이 말을 알게된건 슬랙에 다른 캠퍼분의 질문에 갓상수님이 댓글로 달면서 처음 알게 되었다. 꽤 예전에 물어본건데 이제서야 궁금해서 찾아봤다.

질문은 알고리즘 문제에서 소수를 구하는 방법 때문에 나왔다.
에라토스테네스의 체 - 위키백과에서 가져옴.
방법은 상당히 간단... 2의 배수 제외, 3의 배수 제외, 5의 배수 제외, 7의 배수 제외 ... 하면서 소수를 찾는 것!!

심지어 자바로 구현하는 방법까지 가르쳐준다... 대박.. (엄청 유명한 건가봐!!)

public class Eratos {
	public static void main(String[] args) {
		// ArrayList로 구현
		ArrayList<Boolean> primeList;

		// 사용자로부터의 콘솔 입력
		Scanner scan = new Scanner(System.in);
		int n = scan.nextInt();

		// n <= 1 일 때 종료
		if(n <= 1) return;

		// n+1만큼 할당
		primeList = new ArrayList<Boolean>(n+1);
		// 0번째와 1번째를 소수 아님으로 처리
		primeList.add(false);
		primeList.add(false);
		// 2~ n까지 소수로 설정
		for(int i=2; i<=n; i++ )
			primeList.add(i, true);

		// 2부터  ~ i*i <= n
		// 각각의 배수들을 지워간다.
		for(int i=2; (i*i)<=n; i++){
			if(primeList.get(i)){
				for(int j = i*i; j<=n; j+=i) primeList.set(j, false);
				//i*i 미만은 이미 처리되었으므로 j의 시작값은 i*i로 최적화할 수 있다.
			}
		}
		StringBuffer sb = new StringBuffer();
		sb.append("{");
		for(int i=0; i<=n; i++){
			if(primeList.get(i) == true){
				sb.append(i);
				sb.append(",");
			}
		}
		sb.setCharAt(sb.length()-1, '}');

		System.out.println(sb.toString());

	}
}

튜터님의 알고리즘 도움말씀

알고리즘을 처음 접하는 캠퍼들에게 용기를 주는 한 말씀

  • 시험장에서 '생각'해서 푸는 시험, 암기가 아니다!
  • 시험장에서 생각하는 정성적인 지식, 고민할 수 있는 능력을 검증하는 시험
  • "내가 모르는 건 없다 + 내가 못 풀면 쟤도 못 푼다" 라는 마인드로 풀어라

맞다... 나도 처음에 왜 바로 딱 안될까 했는데. 수학문제와 같은거다. 생각해서 어떻게 풀어나갈지 고민해야 하는거다. 그 다음 문제가 바로.... 그걸 어떻게 컴퓨터가 알아듣게 코딩을 할까? 인 것.
지금 내가 젤 아프게 부딪히고 있는 부분이다. 이걸... 어떻게... 설명해주지...?? 하는 부분.


이력서 작성

이건 또 다른 튜터님이 알려주신 내용.

현시점 이력서 작성의 중요성

  • 코테를 안보고(or 프로그래머스 기준 1단계만 냄) 스프링 과제나 이력서 만으로 면접까지 진행하는 회사들도 많다.
  • 이력서 작성에 앞서, 채용 공고들을 확인하면서 프로젝트 정리의 방향성을 빠르게 잡을 수 있다.
  • 내가 원하는 회사를 미리 선별해두어, 입사를 상상하는 것만으로도 없던 의욕이 솟아난다.
  • 프로젝트 정리 시간을 이력서 작성으로 대체할 수 있다.

채용 공고를 많이 보자!!

  • 원티드, 프로그래머스, 점핏, 로켓 펀치

아는게 있어야 지원을 하는것도 맞다. 내가 어디를 가고 싶은건지부터 설정해보자!!!
우선 그 목표부터 잡고 다시 공부에 집중하자! 이번주는 프로젝트가 끝났다는 안도감 + 얼마 남지 않았다는 생각으로 조금 헤이해진 것 같다...


-오늘의 한 줄-

야! 다시 각성해서 목표를 잡고 뜨겁게 뛰어보자!! 힘들면 걸어도 좋아.

p.s 알아본 채용공고

  • FLO : 음악 앱이니까 관심이 갈 수 밖에 없다. 면접을 어떤 순으로 뽑는지 모르겠다. 신입은 안뽑고 개발 1년 이상 경력이라는데.. 튜터님이 신입이긴 하지만 프로젝트를 해봤으니 경력으로 비벼볼 수 있다고 하셨다.

  • 지그재그 : 카카오로 인수되면서 카카오 스타일이라고 불리는 것 같다. 신입 뽑는다. 서류 - 1차 면접 - 2차 면접 - 조건협의 순.

  • 데브시스터즈 : 언제나 생각하던 꿈의 직장(본인이 쿠키런 랭커라서.. ㅎ 근데 안한지 4달 넘어감 ㅠㅠㅠ) 온라인 코딩테스트가 있다!!!

0개의 댓글