전체 글 28

백준 알고리즘 2559번 - 수열 [Java, Python]

\https://www.acmicpc.net/problem/2559 2559번: 수열 첫째 줄에는 두 개의 정수 N과 K가 한 개의 공백을 사이에 두고 순서대로 주어진다. 첫 번째 정수 N은 온도를 측정한 전체 날짜의 수이다. N은 2 이상 100,000 이하이다. 두 번째 정수 K는 합을 구하기 www.acmicpc.net 오랜만에 풀어본 알고리즘 문제. 1. K개의 합을 구한다 ex) 입력이 5 3 1 2 3 4 5 일 경우 1 + 2 + 3 = 6 2. 더한 숫자 중 맨 왼쪽 값을 빼고, 그 다음번째 값을 더한다 ex) 1 2 3 4 5 -> 6(1 + 2 + 3)에서 1을 빼고, 4를 더함 6 - 1 + 4 = 9 3. 2에서 구한 값이 1보다 크면 최대값 갱신 인덱스만 잘 찾으면 무난하게 풀 수..

타오바오 가입 전에 동결 당했을 경우 가입 방법

최근 키보드에 관심이 늘었다. 스위치도 사서 끼워보고 키캡도 갈아보며 두드려보면 은근 재미있더라. 중국 제품 중에 괜찮은게 많아서 알리 익스프레스로 자주 시켰는데 찾다보니 타오바오가 더 저렴한 것 같아 가입을 하려고 하니 타오바오는 휴대폰 인증을 통해 가입하다가 버벅대면 그대로 계정이 동결 당하나보다. 동결 푸는 방법을 뒤져봐도 딱히 해결 방법은 안 나오던 중 파파고의 도움을 받아 이메일로 가입에 성공했다. 2023.01.07 기준 준비물 : 스마트폰, 파파고 앱(선택) 인터넷 화면 캡쳐해서 파파고 이미지 번역 돌리면 도움이 된다. 네이버 최고 본인은 LTE로 접속해서 진행했다. 와이파이 써도 되는지는 후기 부탁합니다. 1. 모바일로 taobao.com 접속 (world.taobao.com 아님) 2. ..

기타 2023.01.07

백준 알고리즘 3109번 - 빵집 [Java]

https://www.acmicpc.net/problem/3109 3109번: 빵집 유명한 제빵사 김원웅은 빵집을 운영하고 있다. 원웅이의 빵집은 글로벌 재정 위기를 피해가지 못했고, 결국 심각한 재정 위기에 빠졌다. 원웅이는 지출을 줄이고자 여기저기 지출을 살펴보던 www.acmicpc.net DFS + 그리디 문제이다 문제 푸는데 오래 걸렸지만 막상 코드 보면 설명할 내용은 없는 것 같다 다른 탐색과는 다르게 방향을 지정하는 delta 배열에서 값을 넣어주는 순서가 중요하다는 정도? 그리디로 풀어야하기 때문에 오른쪽 위 / 오른쪽 / 오른쪽 아래 순서로 탐색하면 된다 import java.io.BufferedReader; import java.io.IOException; import java.io.I..

백준 알고리즘 2615번 - 오목 [Java]

https://www.acmicpc.net/problem/2615 2615번: 오목 오목은 바둑판에 검은 바둑알과 흰 바둑알을 교대로 놓아서 겨루는 게임이다. 바둑판에는 19개의 가로줄과 19개의 세로줄이 그려져 있는데 가로줄은 위에서부터 아래로 1번, 2번, ... ,19번의 번호 www.acmicpc.net 구현 문제이다 8방 탐색 + 브루트 포스로 구현하면 된다 문제에서 가장 까다로웠던 부분은 6개 이상의 돌 (육목)이 놓인 경우를 구분해야 한다는 점? import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class..

[Java] 순열, 중복 순열, 조합, 중복 조합 재귀로 구현하기

Java는 기본 라이브러리에 순열이나 조합 관련된 라이브러리가 없다.. 파이썬이 그립다 // Practice.java import java.util.Arrays; import java.util.Scanner; public class Practice { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int answer = 0; int n = sc.nextInt(); int r = sc.nextInt(); int numbers[] = new int[r]; boolean isSelected[] = new boolean[n]; answer = nPr(0, 0, n, r, numbers, isSelected); Syste..

공부하자/Java 2022.02.13

[Anaconda3] 가상환경에 Python.exe가 없을 때

Anaconda 버전 : 4.11.0 해결 방법 : conda create --name 가상환경이름 python[=버전] conda create 명령어로 가상환경을 생성한다 해당 폴더에 가면 아무것도 없다.. 파이참에서 인터프리터 설정도 할 수 없다 conda list 명령어로 확인을 해도 아무것도 없다.. https://stackoverflow.com/questions/43145667/anaconda-is-not-creating-full-environment Anaconda is not creating full environment I'm trying to create a conda environment using git-bash and win10. I ran: $ conda create --name ..

공부하자/Python 2022.02.05

[Java] 달팽이 행렬

정방행렬의 변의 길이 N이 주어졌을 때 위와 같이 행렬을 만들어 보자! 예전에 파이썬 처음 연습할 때 비슷한 문제를 풀었다. 아마 그 때는 변의 길이가 아니고 그냥 숫자를 줬던 것 같은데.. 근데 기억이 하나도 안남.; 머리로는 쉽지만 막상 코드를 짜라고 하니 생각이 잘 안났다.. 그래도 잘 지켜보니까 규칙이 보였다 4x4 크기 기준으로 → 방향으로 진행 후 ↓ 방향으로 진행할 때, 전진하는 수가 줄어들었다. (4 -> 3) 이후 ← 방향으로 진행 후 ↑ 방향으로 진행할 때, 다시 전진하는 수가 줄어들었다 (3 -> 2) 크기가 다른 것들도 몇 개 더 그려서 보면 맞더라.. 소스코드 /* Main.java */ import java.util.Scanner; public class Main { public..

공부하자/Java 2022.02.03

백준 알고리즘 1074번 - Z [Python]

https://www.acmicpc.net/problem/1074 1074번: Z 한수는 크기가 2N × 2N인 2차원 배열을 Z모양으로 탐색하려고 한다. 예를 들어, 2×2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다. N > 1인 경우, 배열을 www.acmicpc.net solved.ac 에는 실버 1 난이도로 표기되어 있다. 나는 실버 2, 3도 빌빌대는데 다른 알고리즘(DP, DFS 등..)에 비해서 쉬운 것 같다 알고리즘 보다는 수식 찾는 문제라는 생각이 들어서 n, c, r이 주어졌을 때 값을 계산하는 방식으로 접근했다 위와 같이 표를 그려보니 규칙이 보이는 듯 했다. [ r = 0 c = 8 ] 일때 값은 64이고 [ r = 8 c = 0 ] 일..