OnlineJudge

    Educational Codeforces Round 100 (Rated for Div. 2) A.Dungeon

    문제로 이동 Problem - A - Codeforces codeforces.com 목차 문제 설명 몬스터 세 마리의 체력이 주어진다. 이 몬스터를 죽이기 위해서(체력을 모두 0으로 만든다) 공격을 해야한다. 공격은 단일공격 6회, 전체공격 1회를 반복할 수 있다. 즉, 1~6회 공격은 한 마리에게만 데미지가 들어가고, 7회째 공격은 세 몬스터에게 데미지가 들어간다. 몬스터가 모두 동시에 죽는다면 YES를 그렇지 않으면 NO를 출력한다. 예시 설명 위 그림처럼 3, 2, 4라는 체력을 가진 몬스터가 주어졌다고 생각해보자. 최종적으로 7회차 공격(전체 공격)때 세 몬스터의 체력이 동시에 0이 되면서 죽이기에 성공한다. 출력은 YES가 될 것이다. 주의해야할 점 위 예시는 7회차만에 공격이 끝난다. 하지만 ..

    백준 5676 음주코딩/세그먼트트리

    문제로 이동 5676번: 음주 코딩 각 테스트 케이스마다 곱셈 명령의 결과를 한 줄에 모두 출력하면 된다. 출력하는 i번째 문자는 i번째 곱셈 명령의 결과이다. 양수인 경우에는 +, 음수인 경우에는 -, 영인 경우에는 0을 출력한다. www.acmicpc.net 목차 너무도 흔한 세그먼트 트리 문제이다. 하지만, 주의해야 할 부분이 몇 가지 있다. 주의해야 할 점 1. 구간곱 문제이므로 수가 커진다. 하지만, 이 문제에서는 음,양,0만 판별하면 되므로 모든 수를 -1, 0, 1로 바꿔준다. 2. 문제에 TC(테스트 케이스)가 주어지지 않았다. C++에선 while scanf 사용이 가능하지만 Python3에서는 다른 방법을 사용한다. TC가 주어지지 않는 경우 Python3에서는 Try - Except ..

    Educational Codeforces Round 88 (Rated for Div. 2) A - Berland Poker 풀이

    Educational Codeforces Round 88 (Rated for Div. 2) A - Berland Poker 코드포스 A 풀이 codeforces.com/contest/1359/problem/A Problem - A - Codeforces codeforces.com 문제 설명 정해진 룰에 따라 카드 게임을 한다. 총 카드의 수 n 조커카드의 수 m 게임하는 인원수 k 즉, 한 사람당 소지할 수 있는 최대 카드의 수는 n/k가 된다. 조커 카드를 가장 많이 갖고 있는 사람의 조커 카드 수와 두번째로 많이 갖고 있는 사람의 조커 카드 수를 빼준다. 이 조건을 만족했을때 최대 값은 몇인가? 문제 풀이 문제를 이해 했다면, 첫번째 사람이 가져갈 수 있는 조커 카드의 최대 수(x라는 변수)를 먼저 ..

    Educational Codeforces Round 88 (Rated for Div. 2) B - New Theatre Square 풀이

    Educational Codeforces Round 88 (Rated for Div. 2) B - New Theatre Square 코드포스 풀이 https://codeforces.com/contest/1359/problem/B Problem - B - Codeforces codeforces.com 어? BFS? DFS?.. B번 문제에 벌써 나온다고??? 대회 종료 후에 소스를 엎고 5분만에 해결했다. < 문제 설명 > 테스트케이스 t가 주어지고, n개의 열, m개의 행, 빈 칸 하나의 값인 x, 빈 칸 두개의 값인 y가 주어진다. . . . 위 두가지 경우처럼 . 으로만 찍힌 칸만 계산이 가능하며 * 별이 찍힌 칸은 계산할 수 없다.(무시한다) < 예제 > 3 3 3 7 . . * * . . . * ..

    Codeforces #634 Div2 A. Sequence with Digits

    코드포스 634회 Div2 A번 문제풀이 https://codeforces.com/contest/1355/problem/A Problem - A - Codeforces codeforces.com 아래의 식을 만족한다. an+1 = an + minDigit(an) * maxDigit(an) 케이스의 수 t와 정수 a, k가 입력된다. 1) a=1, k=4 일 때 ak = 42 2) a=487, k=1 일 때 ak = 487 3) a=487, k=2 일 때 ak = 519 4) a=487, k=7 일 때 ak = 628 a1이 1일 때 k를 계속 증가시켜보면 1, 2, 6, 42, 50, 50, 50... 계속해서 50이 반복된다. k an+1 ak 1 - 1 2 a2 = a1 + min(a1) * max(..