본문 바로가기

분류 전체보기77

[백준 / Java] 2665. 미로만들기 문제문제 링크풀이이 문제는 (0, 0) ~ (N-1, N-1)로 가는데 검은 방을 흰 방으로 최소한으로 바꾸면서 갔을 때, 방 색을 바꾼 횟수를 구하는 문제입니다.즉, 방의 색을 바꾸는 횟수를 가중치로 생각했을 때, 가중치를 최소화하면서 끝 방까지 가는 경우를 구하면 됩니다.만약 일반 bfs처럼 푼다면 (N-1, N-1)에 가장 먼저 도달했을 때 방의 색을 바꾼 횟수가 최소가 아닐 수 있습니다.예시: 아래의 경우, 방 색을 전혀 바꾸지 않고도 끝 방에 갈 수 있지만, 방문하는 순서에 따라 방 색을 바꾸는 루트로 가장 먼저 N-1, N-1에 도달할 수 있음따라서 이 문제에서는 흰 방으로 이동하는 것은 가중치가 0, 검은 방으로 이동하는 것은 가중치가 1이고 큐에 그 칸의 정보를 넣었을 때 가중치가 더 작은.. 2024. 6. 11.
Beyond SW 7기 4주차 회고록 🍀 좋았던 점DB 팀플 끝이번 주 월요일은 DB 팀플 결과물을 발표하는 시간이었습니다.다른 팀의 DB 설계를 살펴보면서 "이런 설계가 더 좋네? 앞으로는 이렇게 해야지"라는 생각도 들었고, 발표를 들으면서 진짜 발표를 잘하시는 분들이 많다고 느꼈습니다.개인적으로 느낀 것은 모든 기능을 다 나열해서 보여주는 것보다, 확실하게 보여주고 싶은 포인트를 정해서 그 기능을 중점적으로 보여주는 게 발표를 듣는 사람 입장에서 더 이해하기 쉽고 흥미가 생겼던 것 같습니다.다음에 혹시 발표를 하게 되거나 같은 팀원분의 발표를 피드백 해줄 수 있는 기회가 있다면, 이 프로젝트를 전혀 모르는 사람에게 설명한다는 것을 꼭 기억하면서 발표를 준비하거나 피드백 해줘야겠다는 생각을 했습니다.시험을 잘 봄어쩌다 시험을 잘봐서 상품.. 2024. 6. 9.
[JPA 개념] 연관 관계 매핑 단방향 연관 관계 매핑MEMBER라는 테이블과 TEAM이라는 테이블이 있다고 하겠습니다.한 멤버는 한 팀에 속할 수 있고, 한 팀에는 여러명의 멤버가 속해있습니다.따라서 MEMBER와 TEAM은 N:1 관계입니다.Member.javaimport jakarta.persistence.Column;import jakarta.persistence.Entity;import jakarta.persistence.GeneratedValue;import jakarta.persistence.Id;import lombok.Getter;import lombok.Setter;@Getter@Setter@Entitypublic class Member { @Id @GeneratedValue @Column(name = "MEMB.. 2024. 6. 6.
[JPA 개념] JPA의 기본 어노테이션 알아보기 @Entity@Entity가 분은 클래스는 JPA가 관리, 엔티티라고 합니다.JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 필수입니다.주의할 점!엔티티 클래스에는 기본 생성자가 필수입니다. (파라미터가 없는 public 또는 protected 생성자)final 클래스, enum, interface, inner 클래스에는 @Entity 어노테이션 사용이 불가능합니다.저장할 필드에 final 키워드 사용이 불가능합니다.@Table@Table 어노테이션은 엔티티와 매핑할 테이블을 지정합니다.데이터베이스 스키마 자동 생성 기능hibernate.hbm2ddl.auto속성create: 기존 테이블을 삭제 후 다시 생성합니다. (DROP + CREATE)create-drop: create와 같으나 종료 시.. 2024. 6. 6.
[ 백준 / Java ] 2573. 빙산 문제풀이빙하가 모두 녹거나, 빙하가 녹아서 두 부분 이상이 될때까지 반복문으로 빙하 녹이는 과정을 반복하고, 조건을 만족한다면 반복문을 break로 빠져나옵니다. for(int t = 1; ; t++) { // 시간을 계속 증가시키는 무한 반복문 ... }모든 칸을 돌면서 주변 0의 개수를 세어줍니다. (주변 0개수를 removeCnt에 저장)removeCnt의 값을 각 칸에서 빼줍니다. 이때 만약 map[i][j] - removeCnt[i][j]가 음수가 된다면, 0으로 바꿔줍니다.빙하가 모두 녹았는지 확인하고, 다 녹았다면 반복문을 빠져나갑니다.빙하가 몇 부분으로 갈라졌는지 개수를 세어줍니다. 여기서 dfs 로직이 필요합니다.빙하가 모두 녹거나, 2부분이상으로 녹을 때까지 위 로직.. 2024. 6. 4.
Beyond SW 7기 3주차 회고록 부제: 이 레포는 이제 제껍니다. 뭐야 돌려줘요 3주차가 끝났습니다.. 시간이 굉장히 빠르네요. 원래 블로그 쓰는 걸 좋아해서 주절주절 길게 썼었는데, 이번주부터는 회고록을 좀더 콤팩트하게 써보려고합니다. 그럼 시작합니다! 🍀 좋았던 점깃, 깃헙에 대한 내용을 정리할 수 있었던 시간이번 주 수업에서 가장 인상 깊었고 많이 배웠다고 생각했던 부분은 깃, 깃헙에 대한 내용이었습니다. 깃, 깃헙을 꽤 사용할 줄 안다고 착각하고 살았는데, 제가 쓰던 기능들은 그냥 야매로 알게 된 것들일 뿐이고, 깃을 잘 이해하고 사용한 것도 아니고 깃의 기능의 엄청나게 일부분만 사용하고 있었다는 것을 느꼈습니다. 강사님께서 깃을 쓸 때 충돌이 나는 케이스들을 엄청 체계적으로 정리해서 가르쳐주셔서 강의를 듣기만 해도 지식을 날먹.. 2024. 6. 2.