오늘은 어려운 문제 하나 푸는 날.
문제 딱 읽으면 백트래킹이구나 싶은데, recursion depth 때문에 백트래킹은 안된다
그래서 분류를 보니까 수학이였다,,^^,,,,
그래서 규칙을 찾으려고 이러쿵 저러쿵 하다보니
x와 y를 직접 이동시켜 y <= x가 되면 종료하는 방식으로 하면 됐다.
이후 생각을 바꿔서 y - x 가 10이라면, 1부터 두번씩 빼나가다 0이 되면 멈추는 방식으로 했다. 무조건 2번빼는건 아니고, 여유가 있으면 2번.
최소 횟수를 구하는거지, 어떻게 이동했냐를 묻는게 아니라서 가능한 방법인 듯 하다. 물론 경로를 물으면 sort해서 보여주면 되긴한당.
H2는 용량이 작고 GUI가 웹으로 되어있는 디비.
간단하게 설치하고 테이블을 만들었다.
강사님이 꿀팁알려준거는
sql 폴더를 만들고, 그 안에 ddl을 저장하는거였다. 그럼 깃에 같이 관리되고 참고할 수 있다.
너무 좋은 생각이다. 왜 못했지 이생각? 맨날 MySQL에서 스키마 찾아보고 그랬는데ㅜㅜ ㅋㅋㅋㅋ
20년 전에나 사용하고, 지금은 이런 방식으로 안한다고 한다.
@SpringBootTest
가 스프링 컨테이너와 테스트를 함께 실행하게 해준다. 때문에 @Autowired
사용 가능
@Transactional
을 사용하면 테스트가 끝날 때, 트랜잭션을 롤백한다. 그래서 디비 반영 없이 깔끔한 테스트 가능.
하지만 이건 통합 테스트고, 전에 하던게 단위 테스트. 단위 테스트가 훨씬 빠르고 필수적..?. 통합 테스트는 필요시에만
오늘은 무슨 날인지.. .주말이라 그런가... 파일을 잘못된 폴더에 생성하는 바람에 두번이나 오래 해맸다.. 그리고 난 지쳐버렸다. 하지만! 오늘 Rainbow Brackets을 설정했는데, 맘에 든다.
원래 이런 쓰잘데 없는 예쁜거에 기분 좋아하고 그런거잖아요....?
그리구 nyan 녀석도,, 설치했다..
얘가 로딩바를 무지개로 채우면서 로딩이되는데,, 로딩이 생각보다 빨라서 캡쳐가 안떠지네
아무튼 귀엽다.
이제 집에가서 <마션> 읽고 러닝 뛰어야지. 화!이!팅!
역시 주말은 쉬어야돼.