전체 글(52)
-
[프로그래머스] 직사각형 별찍기
가로가 n, 세로가 m인 직사각형 형태의 별을 출력하는 문제이다. repeat()을 사용하면 간단하게 해결할 수 있다. "반복할 문자열".repeat(반복횟수) 형태로 작성하면 된다! function solution(n, m) { return ("*".repeat(n) + "\n").repeat(m); } 이렇게 제출하였는데 오류가 발생하였다. 생각해보니 기본으로 주어지는 코드가 아래와 같았고 나는 오류인줄 알고, function solution으로 변경하여 풀었다. process.stdin.setEncoding('utf8'); process.stdin.on('data', data => { const n = data.split(" "); const a = Number(n[0]), b = Number(n[..
2023.02.22 -
[프로그래머스] 점프와 순간 이동
1. 앞으로 K만큼 이동 => 건전지 사용량 K 2. (현재까지 온 거리 * 2)위치로 이동 => 건전지 사용X => 2번 방법을 많이 사용하는 것이 유리! 2번 사용을 우선으로 하고, 어쩔 수 없을 때 1번을 사용하는 것으로 문제를 풀었다. 도착한 위치부터 0위치로 돌아간다고 생각했을 때, 위치가 짝수일 때는 2번 방법을 사용해서 절반만큼 돌아가고, (곱하기 2한 위치로 이동하니까) 위치가 홀수일 경우는 1번을 사용하여 1만큼 돌아갈 수 있다. 즉, 2로 나누어 떨어지면 사용량 0, 아니면 사용량 1이다. 예) 2500, 1250, 625, 624, 312, 156, 78, 39, 38, 19, 18, 9, 8, 4, 2, 1, 0 function solution(n) { let ans = 0; whi..
2023.02.20 -
[프로그래머스] N개의 최소공배수
function solution(arr) { var answer = 1; let yaklist = []; let yakjoin = []; arr.forEach((num) => { let newnum = num; let yak = []; var icopy = 0; // 약수를 구하는 코드 while (icopy !== 1 && newnum !== 1) { for (i = 2; i { let max = 1; yaklist.forEach((list) => { let listnum = list.filter((element) => nums === element).length; max = max > listnum ? max : listnum; }); answer *= nums ** max; }); return an..
2023.02.20 -
JavaScript의 match함수
match와 gi 대소문자 구분하지 않고 찾아줌 "aPple".match(/p/gi) //return ["P", "p"] match와 ? 만약 문자열에 찾으려는 단어가 없다면 null이 return된다. match가 return하는 값의 길이를 구하는 코드를 짰는데 match결과가 null이면 error가 발생한다. 반면, 물음표를 붙여주면 undefined로 처리되어 에러가 발생하지 않는다. "aPple".match(/g/gi).length; // TypeError: Cannot read properties of null (reading 'length') // at Object. (c:\Users\USER\Algorithm\level2\022js:1:33) // at Module._compile (no..
2023.02.13 -
[프로그래머스] 게임 맵 최단거리
DFS와 BFS에 관련된 문제이다. DFS는 전체를 경험하여 그 중 원하는 값을 포착하는 것 BFS는 경험하는 도중 원하는 값이 발견되면 바로 종료 가능 * 최단거리를 구할 때는 BFS다 !! 내 코드) 틀림! function solution(maps) { answer = 0; let m = maps.length; let n = maps[0].length; function getAnswer(x, y, val, list) { while (y val ? val : answer; } if (x < n - 1 && list[y][x + 1] == 1) { list[y][x + 1] = 0; ..
2023.02.12 -
[프로그래머스]두 정수 사이의 합
이것이 문제 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다.제한 조건 a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요. a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다. a와 b의 대소관계는 정해져있지 않습니다. 내가 작성한 답^^! def solution(a, b): if a==b: answer=a else: numlist=[a,b] larger=max(numlist) smaller=min(numlist) if 0 in numlist: numlist.remove(0) nozerolist=numlist[0] if..
2021.09.24 -
react-native 앱 따라만들기2
앱을 구성하는 컴포넌트에 대해 알아볼 것이다. View 과 화면분할 return 값에는 무조건 하나의 View만 와야된다 !!!! 여러개의 View를 쓰는 방법은 View를 View로 감싸기. 위 사진처럼 감싼 View의 갯수만큼 한 화면이 분할된다. 이런식으로 분할 가능! flex를 통해 각 화면 크기비율을 다르게 할 수 있음 이건 flex를 각각 2, 1 ,1 로 준 상황 Text 말그대로 글!! 텍스트!! Image 일단 Image 컴포넌트를 import 해주어야 함 3번째 줄에 Image를 추가해준다. import { StyleSheet, Text, View, Image } from 'react-native'; //App.js import React from 'react'; import { Sty..
2021.09.23 -
react native 앱 따라 만들기
https://bit.ly/39t2lO9 개발하는 펭군이님을 따라하면서 배워볼 예정이다! [#2 Component와 메인화면 분할] 환경 구축부터 스토어 출시까지 디데이 앱 따라 만들며 배우는 React 리액트 네이티브 튜토리얼 [#1 리액트 네이티브 맛보기] [#2 Component와 메인화면 분할] [#3 레이아웃 구성하기] [#4 레이아웃 구현 마무리하기] [#5 state] [#6 설정 Modal 만들기] [#7 설정 Modal 기능 추가하 dev-pengun.tistory.com 앞서 생성했던 프로젝트인 SampleApp 폴더를 vscode나 pycharm 등 에디터에서 오픈한다. SampleApp은 cmd를 관리자 권한으로 실행하지 않고 생성한 프로젝트다! 관리자 권한으로 생성했으면 C드라이브..
2021.09.23 -
react-native 개발 환경 설정
react-native로 앱을 개발할 계획이다. react-native로 웹을 개발하고 안드로이드 앱이면 android studio를 이용해 apk파일로 감싸고, ios앱이면 맥북을 이용해 감싸면 된다. 아마도 chocolatey 설치 Nodejs 설치 python 설치 React Native CLI 설치 JDK설치 안드로이드 스튜디오 설치 안드로이드 스튜디오 SDK 설정 안드로이드 스튜디오 환경 변수 설정 react-native 프로젝트 생성 및 확인 완성! react-native 환경 설정 시작하자! chocolatey 설치 chocolatey: 윈도우즈용 패키지 설치삭제 관리 프로그램이다. cmd를 관리자 권한으로 실행한 뒤 아래 명령어를 실행하고 @"%SystemRoot%\System32\Wind..
2021.09.23 -
[프로그래머스]시저암호
시저암호는 문자열 s에 있는 알파벳들을 n만큼 밀어서 다른 알파벳으로 만드는 암호화 방식이다. 조건 공백은 아무리 밀어도 공백입니다. s는 알파벳 소문자, 대문자, 공백으로만 이루어져 있습니다. s의 길이는 8000이하입니다. n은 1 이상, 25이하인 자연수입니다. 소문자와 대문자는 따로 생각하는 것! 최종작성한 코드이다. def solution(s, n): answer = ""#민 문자열을 저장할 변수 al_big = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"#대문자 리스트 al_small="abcdefghijklmnopqrstuvwxyz"#소문자 리스트 i=0#s문자열을 인덱싱할 값 for alpha in s: ss="" if alpha == " ": ss=s[i] elif alpha in..
2021.09.15