Development 195

[React Native] Upgrade 0.61.5 to 0.63.4

업데이트를 하자! 제가 운영중인 루빗이라는 어플을 처음 init한지 벌써 1년이 되었어요! react-native 버전이 그새 많이 올라서 업그레이드를 해보려고 합니다. Upgrade Helper Step 1 - Edit Code https://react-native-community.github.io/upgrade-helper 이 사이트를 이용하면 원하는 버전으로의 업데이트를 위해 무엇을 해야하는지 알 수 있어요. 저는 0.61.5에서 0.63.4로 업그레이드를 할겁니다! https://react-native-community.github.io/upgrade-helper/?from=0.61.5&to=0.63.4 여기에 나와있는대로 코드를 수정해주세요. 참고) storyboard 추가하기 기존 ios/R..

[React Native / Android] unexpected element <queries> found in <manifest>

에러 unexpected element found in 해결법 android/build.gradleAndroid Gradle plugin 버전을 3.4.2에서 3.4.3으로 바꿔준다. classpath("com.android.tools.build:gradle:3.4.3") 참고 링크 https://github.com/ivpusic/react-native-image-crop-picker/issues/1406 https://stackoverflow.com/questions/62969917/how-do-i-fix-unexpected-element-queries-found-in-manifest https://android-developers.googleblog.com/2020/07/preparing-your-b..

[React Native] ScrollView과 position: absolute를 같이 쓰고 싶을 때 (flex를 이용하는 방법)

목표 각각의 탭을 클릭했을 때 나오는 content가 scrollview이면서 그 scrollview의 position이 absolute이고, zIndex로 해당 scrollview를 보여주고 숨기고를 구현하고 싶었다. 실패 여느 view를 구현하듯이 scrollview에도 position: 'absolute'를 적용했더니, 끝까지 스크롤되지 않았다. 구글링을 많이 해봤지만 통하지 않았다. 해결법 position: 'relative'. 즉 position은 건들지 않고, flex만 건들면 되는 문제였다. height도 설정해줘야 한다. 그렇지 않으면 완전히 겹쳐지지 않는다. 나같은 경우는 1000으로 설정했지만, 실제로 1000까지 스크롤되지는 않는다. 코드 {/* S1 *} {...content} {/..

[백준 / Python] 1753 최단경로 (다익스트라)

결과 메모리: 167436 KB 시간: 868 ms 알게된 것 다익스트라: 한 정점에서 다른 모든 정점으로의 최단 거리 플로이드-와샬: 모든 정점에서 다른 모든 정점으로의 최단 거리 heap (https://hocheon.tistory.com/70) (https://dingrr.com/blog/post/%EC%9E%90%EB%A3%8C%EA%B5%AC%EC%A1%B0-heap%ED%9E%99) 최댓값과 최솟값을 빠르게 찾기 위해 고안된 완전 이진트리 형태의 자료구조. O(log n) 삽입: 트리 마지막 원소에 추가 삭제: 루트 노드 제거, 마지막 노드를 루트로 이동 이진 탐색트리와의 차이점: 이진 탐색트리는 탐색을 위함, 힙은 최소/최대값 찾기 위함. 왜 사용?: 데이터를 큐나, 배열에 데이터를 넣고 최..

[백준 / Python] 1613 역사 (플로이드-와샬 알고리즘)

결과 (PyPy3) 메모리: 127824 KB (개선: 126088ms) 시간: 5440 ms (개선: 640ms) 주의할 것 항상 index 때문에 틀렸습니다 를 한 번 마주친다. 조심하자!!!! 개선 시간이 너무 오래 걸려서 몇가지를 개선해보았다. 참고: https://www.acmicpc.net/source/18012011 maxsize 대신 0 대입. maxsize는 정말 필요할 때만 쓰자. 시간: 5440ms to 3232ms 🎉 import readline. 그냥 input() 대신 sys.stdin.readline import sys ip = sys.stdin.readline 시간: 3232ms to 640ms 😇 (이걸 이제까지 몰랐다니) 개선 전 코드 from sys import maxs..

[백준 / Python] 2458 키 순서 (플로이드-와샬 알고리즘)

https://www.acmicpc.net/problem/2458 결과 메모리: 126508 KB 시간: 976 ms 해결 방식 도저히 모르겠어서 블로그를 찾아봤다. (감사합니다 ㅎ.ㅎ) https://chldkato.tistory.com/42 아직 플로이드의 원리를 제대로 파악하지 못해서 그런 것 같다. 제대로 이해하고 풀자. key: 자신의 정점으로 오는 경로가 모두 파악된 것만이 자신의 키가 몇 번째인지 알 수 있다. 라는 것이다. 알게된 것 print([1, 2, 3, 3].count(3)) # count 함수 플로이드-와샬 알고리즘을 3번째 푸는데, 점점 감이 잡힌다! from sys import maxsize n, m = map(int, input().split()) arr = [[maxsiz..

[백준 / Python] 11404 - 플로이드

결과 메모리: 126224KB 시간: 348ms www.acmicpc.net/source/24194515 해결방식 전형적인 플로이드 문제. maxsize를 import 하지 않고 100000정도로 설정하면 너무 작아서 "틀렸습니다"가 뜬다. 주의하기. 제출코드 # 제출 from sys import maxsize # 큰 값 max = maxsize n = int(input()) m = int(input()) route = \[\[max\] \* n for \_ in range(n)\] # 1. 도시1에서 도시1의 비용은 0이니까 for i in range(n): route\[i\]\[i\] = 0 # 2. 각 도시 간의 비용 연결 for \_ in range(m): a, b, c = map(int, inp..

[React Native / iOS] Admob 에러 - [admob/unknown] the provided view controller is already presenting another view controller

에러 [admob/unknown] the provided view controller is already presenting another view controller 원인 다른 화면에서 광고를 사용하고 있는데, 광고 id가 다름에도 불구하고. 알고보니, 나는 react-native-modal을 이용해 모달을 띄운 후 그 안에서 광고를 불러오려고 시도하고 있었다. 즉 현재 스크린 위에 모달이라는 뷰가 하나 더 덮여쓰여진 것이다. 그래서 위 에러가 났던 것이다. 그래서 모달에서는 광고를 띄우지 않으면, 광고는 정상적으로 불러와진다!

[백준 / Python] 9205 - 맥주 마시면서 걸어가기

알게된 것 다익스트라 알고리즘: 하나의 정점에서 다른 모든 정점으로의 최단 거리 구하기 플로이드 와샬 알고리즘: 모든 정점에서 모든 정점으로의 최단 경로 구하기, 거쳐가는 정점을 기준으로 최단 거리를 구한다. 참고 블로그 https://mygumi.tistory.com/110 https://m.blog.naver.com/PostView.nhn?blogId=ndb796&logNo=221234427842&proxyReferer=https:%2F%2Fwww.google.com%2F 이번 문제에서는 '플로이드 와샬 알고리즘'을 이용한다. BFS로도 풀 수 있다고 한다. 맨처음에는 BFS도 아닌, 플로이드도 아닌, 단순하게 각각의 거리를 비교하는 방식으로 풀었는데, 도저히 아닌 것 같아서 풀이를 검색해서 해결했다..

[백준 / Python] 14503 - 로봇 청소기

결과 메모리 123264 KB 시간 116 ms 알게된 것 bfs에서 도중에 return 하는 예시도 연습해봤다. 푼 과정 directions 순서가 방향마다 달라서 getDirections를 만들었다. bfs 처음에 매번 print(a, b) 해서 내가 의도한대로 동작하는지 다 따라가봤다. 역시 직접 해보는게 제일 빠르다! 제출 코드 # 제출 N, M = map(int, input().split()) robotR, robotC, currentD = map(int, input().split()) area = [list( map(int, input().split()) ) for _ in range(N)] directions = [(0, -1), (1, 0), (0, 1), (-1, 0)] # 북 기준 de..

출처: https://mingos-habitat.tistory.com/34 [밍고의서식지:티스토리]