Computer Science/Problem Solving
[백준] 8989번 - 시계 / C언어(C90)
[백준] 8989번 - 시계 / C언어(C90)
2024.12.28문제 링크https://www.acmicpc.net/problem/8989 문제 요약기원이의 방에는 시침과 분침이 있는 아날로그 시계가 있습니다. 기원이는 특정 시간에서 시침과 분침이 이루는 각도(0° 이상 180° 이하)를 구하는 것이 취미인데, 5개의 서로 다른 시간이 주어졌을 때 각도를 기준으로 오름차순 정렬한 뒤 중간값(세 번째 순서)에 해당하는 시간을 찾아보고자 합니다.시간 형식: hh:mm (00 ≤ hh ≤ 23, 00 ≤ mm ≤ 59)각도 계산:시침 각도 = (시간 % 12) * 30 + 분 * 0.524시간 형식의 시간을 12시간 형식으로 변환하기 위해 % 12 연산을 사용합니다.분침 각도 = 분 * 6이 때 시침과 분침의 차이가 180°를 넘어가면, 360° - (차이)로 조정하여 1..
[백준] 6568번 - 귀도 반 로썸은 크리스마스날 심심하다고 파이썬을 만들었다 / C언어(C90)
[백준] 6568번 - 귀도 반 로썸은 크리스마스날 심심하다고 파이썬을 만들었다 / C언어(C90)
2024.12.26문제 링크https://www.acmicpc.net/problem/6568문제 요약크리스마스날에 직접 만든 “간이 컴퓨터”는 다음과 같은 특징을 갖습니다.1. 메모리(Memory)32바이트(인덱스 0~31) 프로그램 코드와 데이터가 한 곳에 저장(폰 노이만 구조)2. 프로세서(Processor)8비트짜리 가산기(Accumulator) 5비트짜리 프로그램 카운터(PC) 1바이트(8비트) 명령어: 상위 3비트(opcode) + 하위 5비트(operand)3. 명령어각 명령어는 8비트로 구성되고 의미는 아래와 같습니다: 000xxxxx STA x 메모리 x번지에 가산기 값 저장 001xxxxx LDA x 메모리 x번지 값을 가산기에 로드 010xxxxx BEQ x 가산..
[백준] 4659번 - 비밀번호 발음하기 / C언어(C90)
[백준] 4659번 - 비밀번호 발음하기 / C언어(C90)
2024.12.26문제 링크https://www.acmicpc.net/problem/4659문제 요약비밀번호가 다음 조건을 모두 만족하면 “적당히 외우기 쉬우면서도 안전한 비밀번호” 로 간주합니다.모음(a, e, i, o, u)이 최소 한 번 이상 등장해야 합니다.모음이 3개 연속이거나 자음이 3개 연속으로 나타나면 안 됩니다.같은 글자가 연속해서 두 번 등장할 수 없지만 ee와 oo는 예외로 허용합니다.예를 들어, "a" 는 모음이 포함되어 있으므로 조건 1을 만족하며 3개 연속된 모음이나 자음도 없고 같은 글자 연속도 없으므로 “acceptable” 판정을 받습니다.반면에 "tv" 는 모음이 없으므로 조건 1에서 실패하여 “not acceptable”이 됩니다.문제 해결 아이디어1. 함수 분리 설계비밀번호가 여러 조건..