전체 글

메인문의 이야기
Coding Test/Python

[Python] 곳감(모래시계)

[문제] 현수는 곳감을 만들기 위해 감을 깍아 마당에 말리고 있습니다. 현수의 마당은 N*N 격자판으로 이루어져 있으며, 현수는 각 격자단위로 말리는 감의 수를 정합니다. 그런데 해의 위치에 따라 특정위치의 감은 잘 마르지 않습니다. 그래서 현수는 격자의 행을 기준으로 왼쪽, 또는 오른쪽으로 회전시켜 위치를 변경해 모든 감이 잘 마르게 합니다. 만약 회전명령 정보가 2 0 3이면 2번째 행을 왼쪽으로 3만큼 아래 그림처럼 회전시키는 명령입니다. 첫 번째 수는 행번호, 두 번째 수는 방향인데 0이면 왼쪽, 1이면 오른쪽이고, 세 번째 수는 회전하는 격자의 수입니다. M개의 회전명령을 실행하고 난 후 아래와 같이 마당의 모래시계 모양의 영역에는 감 이 총 몇 개가 있는지 출력하는 프로그램을 작성하세요. [풀..

Coding Test/Python

[Python] 사과나무(다이아몬드)

[문제] 현수의 농장은 N*N 격자판으로 이루어져 있으며, 각 격자안에는 한 그루의 사과나무가 심어져있다. N의 크기는 항상 홀수이다. 가을이 되어 사과를 수확해야 하는데 현수는 격자판안의 사과를 수확할 때 다이아몬드 모양의 격자판만 수확하고 나머지 격자안의 사과는 새들을 위해서 남겨놓는다. 만약 N이 5이면 아래 그림과 같이 진한 부분의 사과를 수확한다. 현수과 수확하는 사과의 총 개수를 출력하세요. ▣ 입력설명 첫 줄에 자연수 N(홀수)이 주어진다.(3

Framework/React

컴포넌트 만드는 법

리액트 에서는 html 의 div 가 너무 많아지면 코드의 가독성이 떨어지기 때문에 이를 위해 component 로 변경해주는 작업을 한다. [정리] 1. 컴포넌트 만드는 방법 ① function 만들고 ② return() 안에 html 담기 ③ or 쓰기 1. 컴포넌트 만드는 방법 ① function 만들기 - function 은 다른 function 바깥에 만들고, 영어 대문자로 시작해야 한다. ② return() 안에 html 만들기 - 기존의 html 문법에 따라 return 안에 html 코드를 작성한다. ③ or 쓰기 - 만들어준 컴포넌트를 사용하고자 하는 곳에 작성한다. 2. 완성된 코드 App.js /* eslint-disable */ import React, { useState } fro..

Coding Test/Python

[Python] 격자판 최대합

[문제] 5*5 격자판에 아래롸 같이 숫자가 적혀있습니다. N*N의 격자판이 주어지면 각 행의 합, 각 열의 합, 두 대각선의 합 중 가 장 큰 합을 출력합니다. ▣ 입력설명 첫 줄에 자연수 N이 주어진다.(1 largest: largest = sum2 sum1 = sum2 = 0 for i in range(n): sum1 += a[i][i] sum2 += a[i][n-i-1] if sum1 > largest: largest = sum1 if sum2 > largest: largest = sum2 print(largest) [내용] 1. 리스트를 반복해서 input 할 경우에는 a = [list(map(int, input().split))) for _ in range(n)] 을 사용하면 한 줄로 가능하다..

Coding Test/Python

[Python] 수들의 합

[문제] N개의 수로 된 수열 A[1], A[2], …, A[N] 이 있다. 이 수열의 i번째 수부터 j번째 수까지의 합 A[i]+A[i+1]+…+A[j-1]+A[j]가 M이 되는 경우의 수를 구하는 프로그램을 작성하시오. ▣ 입력설명 첫째 줄에 N(1≤N≤10,000), M(1≤M≤300,000,000)이 주어진다. 다음 줄에는 A[1], A[2], …, A[N]이 공백으로 분리되어 주어진다. 각각의 A[x]는 30,000을 넘지 않는 자연수이다. ▣ 출력설명 첫째 줄에 경우의 수를 출력한다. ▣ 입력예제 1 8 3 1 2 1 3 1 1 1 2 ▣ 출력예제 1 5 [풀이] n,m = map(int, input().split()) a = list(map(int, input().split())) lt = ..

Coding Test/Python

[Python] 두 리스트 합치기

[문제] 오름차순으로 정렬이 된 두 리스트가 주어지면 두 리스트를 오름차순으로 합쳐 출력하는 프로 그램을 작성하세요. ▣ 입력설명 첫 번째 줄에 첫 번째 리스트의 크기 N(1

Coding Test/Python

[Python] 카드 역배치

[문제] 1부터 20까지 숫자가 하나씩 쓰인 20장의 카드가 아래 그림과 같이 오름차순으로 한 줄로 놓여있다. 각 카드의 위치는 카드 위에 적힌 숫자와 같이 1부터 20까지로 나타낸다. 이제 여러분은 다음과 같은 규칙으로 카드의 위치를 바꾼다: 구간 [a, b] (단, 1 ≤ a ≤ b ≤ 20)가 주어지면 위치 a부터 위치 b까지의 카드를 현재의 역순으로 놓는다. 예를 들어, 현재 카드가 놓인 순서가 위의 그림과 같고 구간이 [5, 10]으로 주어진다면, 위치 5부터 위치 10까지의 카드 5, 6, 7, 8, 9, 10을 역순으로 하여 10, 9, 8, 7, 6, 5로 놓는다. 이제 전체 카드가 놓인 순서는 아래 그림과 같다. 이 상태에서 구간 [9, 13]이 다시 주어진다면, 위치 9부터 위치 13까..

Coding Test/Python

[Python] 숫자만 추출

[문제] 문자와 숫자가 섞여있는 문자열이 주어지면 그 중 숫자만 추출하여 그 순서대로 자연수를 만듭니다. 만들어진 자연수와 그 자연수의 약수 개수를 출력합니다. 만약 “t0e0a1c2h0er”에서 숫자만 추출하면 0, 0, 1, 2, 0이고 이것을 자연수를 만들면 120이 됩니다. 즉 첫 자리 0은 자연수화 할 때 무시합니다. 출력은 120를 출력하고, 다음 줄에 120의 약수의 개수를 출력하면 됩니다. 추출하여 만들어지는 자연수는 100,000,000을 넘지 않습니다. ▣ 입력설명 첫 줄에 숫자가 썩인 문자열이 주어집니다. 문자열의 길이는 50을 넘지 않습니다. ▣ 출력설명 첫 줄에 자연수를 출력하고, 두 번째 줄에 약수의 개수를 출력합니다. ▣ 입력예제 1 g0en2Ts8eSoft ▣ 출력예제 1 2..

Coding Test/Python

[Python] 회문 문자열 검사

[문제] N개의 문자열 데이터를 입력받아 앞에서 읽을 때나 뒤에서 읽을 때나 같은 경우(회문 문자열)이면 YES를 출력하고 회문 문자열이 아니면 NO를 출력하는 프로그램을 작성한다. 단 회문을 검사할 때 대소문자를 구분하지 않습니다. ▣ 입력설명 첫 줄에 정수 N(1

Framework/React

state 특징

[state 정리] 1. 변수 대신 쓰는 데이터 저장 공간 2. useState() 를 이용해 만들어야 함 3. 문자, 숫자, array, object 다 저장 가능 - 데이터 넣는 방법: 1) 변수에 넣거나 2) state 넣거나 [state 사용 방법] state 사용하기 위해서는 { useState } 상단에 첨부! import React, { useState } from 'react'; cf) ES6 destructuring 문법 - array, object 에 있던 자료를 변수에 쉽게 담고 싶을 때 사용 ex) 10,100을 a,b에 넣어주세요! var [a,b] = [10, 100] let [a,b] = useState('남자 코트 추천'); => [state데이터, state 데이터 변경 함..

메인문
메인문