AlgoStudy-Gumi10th-Class4 / Algorithm-Study

매일 1문제씩 풀기, 주말에는 2일에 한문제.(다음날까지 서로 코드리뷰)
1 stars 1 forks source link

23.07.31.-08.06. #6

Open yeaaaaahhhhh opened 1 year ago

Ryujy commented 1 year ago

백준[2578] 빙고 실버4

cheesecat47 commented 1 year ago
필수? 내가 고른 문제 코드 상태
O 백준 2447 별찍기 - 10 (골드5) 백준 2447. 별 찍기 - 10/Juyong_230731.java 성공
백준 5525 IOIOI (실버1) 백준 5525. IOIOI/Juyong_230805.java 부분 성공
백준 1194 달이 차오른다, 가자. (골드1)
필수? 다른 문제 코드 상태
지윤 백준 2578 빙고 (실버4) 백준 2578. 빙고/Juyong_230801.java 성공
백준 2477 참외밭 실버2 백준 2477. 참외밭/Juyong_230801.java 성공
성규 백준[11729] 하노이 탑 이동 순서 백준 11729. 하노이 탑 이동 순서/Juyong_230802.java 블로그 참고
예현 백준 13458 시험감독 브론즈2 백준 13458. 시험 감독/Juyong_230804.java
Gyu-S commented 1 year ago

백준[11729] 하노이 탑 이동 순서

yeaaaaahhhhh commented 1 year ago

백준 13458 시험감독 브론즈2

cheesecat47 commented 1 year ago

https://github.com/AlgoStudy-Gumi10th-Class4/Algorithm-Study/blob/abdd9bb741ce6197ab3eae1c5c894c16b523d145/%EB%B0%B1%EC%A4%80%202578.%20%EB%B9%99%EA%B3%A0/gyu_230731.java#L27-L33 @Gyu-S 변수 이름이랑 함수 이름 같아도 문제 없더나?

Ryujy commented 1 year ago

백준 2477 참외밭 실버2

Gyu-S commented 1 year ago

https://github.com/AlgoStudy-Gumi10th-Class4/Algorithm-Study/blob/abdd9bb741ce6197ab3eae1c5c894c16b523d145/%EB%B0%B1%EC%A4%80%202578.%20%EB%B9%99%EA%B3%A0/gyu_230731.java#L27-L33

@Gyu-S 변수 이름이랑 함수 이름 같아도 문제 없더나?

궁금해서 해봤는데 문제 없이 돌아가더라구 근데 좋은 건 아닌것같아

cheesecat47 commented 1 year ago

https://github.com/AlgoStudy-Gumi10th-Class4/Algorithm-Study/blob/62c4871efa25248d5677c6c2a64723c8c9f6d4e9/%EB%B0%B1%EC%A4%80%202578.%20%EB%B9%99%EA%B3%A0/yeah_230801.java#L53-L67

@yeaaaaahhhhh 매 번 전체 보드를 다 반복하면서 확인했구나..? 나는 숫자를 부를 때마다 카운트하는 방식으로 구현했는데, 시간상 큰 차이는 없어보이긴 하네

cheesecat47 commented 1 year ago

https://github.com/AlgoStudy-Gumi10th-Class4/Algorithm-Study/blob/069d82dcab4bc02b28e114ab71320d43f8781679/%EB%B0%B1%EC%A4%80%202447.%20%EB%B3%84%20%EC%B0%8D%EA%B8%B0%20-%2010/yeah_230801.java#L84-L88

@yeaaaaahhhhh 문자열을 계속 생성해서 메모리 사용량이 많아진 것 같네

https://github.com/AlgoStudy-Gumi10th-Class4/Algorithm-Study/blob/069d82dcab4bc02b28e114ab71320d43f8781679/%EB%B0%B1%EC%A4%80%202447.%20%EB%B3%84%20%EC%B0%8D%EA%B8%B0%20-%2010/yeah_230801.java#L97

이 경우에 기존 arr[y] = "***" 가 있다면 지금 arr[y]에 있는 "***"에 별을 하나 더 붙이는게 아니라 "***"에 별을 하나 더 붙인 "****"arr[y]에 넣고 "***"는 gc를 기다리는 상태가 될테니까

yeaaaaahhhhh commented 1 year ago

https://github.com/AlgoStudy-Gumi10th-Class4/Algorithm-Study/blob/62c4871efa25248d5677c6c2a64723c8c9f6d4e9/%EB%B0%B1%EC%A4%80%202578.%20%EB%B9%99%EA%B3%A0/yeah_230801.java#L53-L67

@yeaaaaahhhhh 매 번 전체 보드를 다 반복하면서 확인했구나..? 나는 숫자를 부를 때마다 카운트하는 방식으로 구현했는데, 시간상 큰 차이는 없어보이긴 하네

나도 숫자부를 때마다 카운트 확인하는 식으로 구현한거야! 어차피 새로 체크하는 칸이 든 줄은 무조건 빙고 없잖아 그래서 자세히 보면 찾은 좌표 기준으로 가로세로대각선만 확인해서 조금 시간이 줄긴했을거야. 엄청 효율적인 코드는 아니긴하지만 ㅎㅎ ;;

https://github.com/AlgoStudy-Gumi10th-Class4/Algorithm-Study/blob/9322b85201d189fa66c211621468e7f8602c2d1a/%EB%B0%B1%EC%A4%80%202578.%20%EB%B9%99%EA%B3%A0/gyu_230731.java#L33-L38 이렇게 하면 빙고 카운트 초기화가 필요없어

yeaaaaahhhhh commented 1 year ago

https://github.com/AlgoStudy-Gumi10th-Class4/Algorithm-Study/blob/9322b85201d189fa66c211621468e7f8602c2d1a/%EB%B0%B1%EC%A4%80%202578.%20%EB%B9%99%EA%B3%A0/Juyong_230801.java#L39-L42 @cheesecat47 오 근데 행방향 열방향 체크된 갯수 확인하는거 진짜 괜찮다 아이디어 좋은듯 bb 또 하나 배워갑니당

Ryujy commented 1 year ago

필수? 내가 고른 문제 코드 상태 O 백준 2447 별찍기 - 10 (골드5) 백준 2447. 별 찍기 - 10/Juyong_230731.java 성공 백준 5525 IOIOI (실버1)
백준 1194 달이 차오른다, 가자. (골드1)
필수? 다른 문제 코드 상태 지윤 백준 2578 빙고 (실버4) 백준 2578. 빙고/Juyong_230801.java 성공 백준 2477 참외밭 실버2 백준 2477. 참외밭/Juyong_230801.java 성공 성규 백준[11729] 하노이 탑 이동 순서 백준 11729. 하노이 탑 이동 순서/Juyong_230802.java 블로그 참고 예현 백준 13458 시험감독 브론즈2 백준 13458. 시험 감독/Juyong_230804.java

대박 대단하다 이거..

cheesecat47 commented 1 year ago

필수? 내가 고른 문제 코드 상태 O 백준 2447 별찍기 - 10 (골드5) 백준 2447. 별 찍기 - 10/Juyong_230731.java 성공 백준 5525 IOIOI (실버1) 백준 1194 달이 차오른다, 가자. (골드1) 필수? 다른 문제 코드 상태 지윤 백준 2578 빙고 (실버4) 백준 2578. 빙고/Juyong_230801.java 성공 백준 2477 참외밭 실버2 백준 2477. 참외밭/Juyong_230801.java 성공 성규 백준[11729] 하노이 탑 이동 순서 백준 11729. 하노이 탑 이동 순서/Juyong_230802.java 블로그 참고 예현 백준 13458 시험감독 브론즈2 백준 13458. 시험 감독/Juyong_230804.java

대박 대단하다 이거..

| 필수? | 내가 고른 문제 | 코드 | 상태 |
|:---:|:---:|:---:|:---:|
| O | [백준 2447 별찍기  - 10 (골드5)](https://noj.am/2447) | [백준 2447. 별 찍기 - 10/Juyong_230731.java](https://github.com/AlgoStudy-Gumi10th-Class4/Algorithm-Study/blob/main/백준%202447.%20별%20찍기%20-%2010/Juyong_230731.java) | 성공 |

@Ryujy 이렇게 쓰면 돼 ㅋㅋ

cheesecat47 commented 1 year ago

https://github.com/AlgoStudy-Gumi10th-Class4/Algorithm-Study/blob/3a1372d9d316def6debe44fb871b7a0baa15807d/%EB%B0%B1%EC%A4%80%202578.%20%EB%B9%99%EA%B3%A0/jiyun230805.java#L58-L62

@Ryujy 이 부분 리팩토링 해보는건 어때? 지금 버전에서는 한 칸 한 칸 체크할 때마다 전체 맵을 확인해야되니 O(4N^2)만큼 추가되는 구조인데, 어떤 줄에 숫자가 몇 개가 체크됐는지를 기억해두면 반복을 많이 줄일 수 있을 것 같거든