본문 바로가기

# 공부/# 그 외 흥미로운 문제들10

[백준::1475 Py] 방번호 못풀었었던 문제 중 두번째 문제는 간단히 말해서 0~9가 적힌 스티커가 있고, 어떠한 방 번호 N이 들어왔을때 총 몇 세트가 필요하느냐?라는 것이다. 0~9의 스티커는 한 세트이고, 단 6와 9는 뒤집어서 쓸 수있다. 즉 6이 없을때 9를 6으로 뒤집어 사용이 가능하다는것. 쉬울줄 알았는데 의외로 좀 까다로웠다. 우선 str형으로 받아주고 해당 숫자의 크기를 재서 몇자리인지 나눴고 세트의 수를 count로 세주려다가 코드가 불필요하게 길어져서 연산은 더 많아지지만 내가 편한방향으로 코딩했다. 그게 바로, 2차원 배열을 하나 만들어놓고 세트가 필요할경우 2차원 배열 내부에 1차원 배열을 append하는 식으로 진행했고, 269945처럼 2세트로도 가능한 결과를 잘못계산해서 3세트가 나오는 등을 고려해야한다.. 2021. 12. 9.
#[백준::1212] 8진수 2진수 오늘은 러시아어 공부를 하다가 머리 식힐겸 풀다 딴거하러가거나 능력이 안되어 못풀거나 뭐.. 그런문제를 풀어보려고 한다. 우선 #[백준::1212 Py] 8진수 2진수 약 한달전 c++로 풀던게 있는데, 이때 내 기억으로 풀다가 뭔일이 있어서 그만둔걸로 기억한다. 아무튼 최근 python을 가르치며 좀 더 공부를 해야겠단 생각으로 python으로 풀어보는데, 역시 이런 문제들은 기가막히게 간단하게 풀린다. 설명도 매우 간결하다. 일단 파이썬 내부함수엔 2,8,10,16진수를 변환시켜주는 애가 있다.2진수는 bin, 8진수는 oct, 10진수는 int, 16진수는 hex우선 python터미널을 열어서 테스트를 해봤다. 일단 난 oct나 bin을 어떤 자료형으로 표현하는가에 대해 딱히 생각해본적이 없었다. .. 2021. 12. 9.
[백준::1021번::Python] 회전하는 큐 의외로 굉장히 쉬운 문제다. 간단하게 말해서 큐의 시작과 끝을 이어붙인건데, 보통의 큐는 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ d a t a 1 d a t a 2 d a t a 3 d a t a 4 ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 이렇다면 회전하는 큐는 다이얼전화기 같이 생겼다고 생각하면 된다. 문제에선 pop,left,right만 가능하다고 나와있다. 더 자세히 보면 뽑아내려는 n개의 수를 만나면 pop하고, 아니면 left혹은 right를 하는것인데 이건 엄청 간단하다. 현재 인덱스를 0번으로 고정하고, 목표 값이 있는 인덱스가 총 길이의 절반보다 크냐작냐에 따라 다르게하면 된다. 예로들어 1 2 3 4 5 6 7 8 9 10 가 있을때 2 9 5면, 1을.. 2021. 12. 8.
[백준::1966번] 프린터 큐 위 두 파일은 테스트케이스 예제와 결과값이다. 둘다 txt형식으로 열어주면 된다. 이 문제를 방금 풀었는데 대략 한시간 좀 넘게 걸린듯하다. 어이가 없게도 검증과정에서 넣은 print문구 하나때문에 이거 잡느라 시간이 꽤 걸렸다. 풀이:: 간단하게 말해서 테스트케이스 i 문서개수n, m번째 문서 우선순위 p 입력 예시는 이러하다. 예제 입력을 바탕으로 조금 더 풀자면, 3 # 테스트 케이스 수 1 0 # 문서의 수 / 몇번째문서? 5 # 우선순위 처음부터 끝까지 4 2 1 2 3 4 6 0 1 1 9 1 1 1 이해가 안되면 말로푸는게 최고다. 첫번째줄부터, 3개의 테스트케이스를 입력받을것이다. 문서의 수는 1개이고 0번째 문서가 몇번째로 출력되는지 찾을것이다. 우선순위는 5이다. 답이 1 문서의 수는 .. 2021. 12. 7.