달마루
기획자에서 개발자로
달마루
전체 방문자
오늘
어제
  • 분류 전체보기 (334)
    • 기획 이야기 (3)
    • 개발자로 전향한 이유 (1)
    • Github Address (1)
    • 개발자, 그 여정 (11)
      • 기초특강 (4)
      • 국비학원 선정 (4)
      • BitCamp_수업내용 (1)
      • 학원 프로젝트 후기 (1)
      • 정보처리기사 (1)
      • 개발 이야기 (0)
    • 개념 창고 (126)
      • JAVA (50)
      • CS (1)
      • Database (27)
      • NetWork (2)
      • 자료 구조 (2)
      • React (8)
      • Spring (3)
      • JPA (1)
      • HTML & CSS (18)
      • JS (3)
    • algorithm (186)
      • 백준 (161)
      • 프로그래머스 (23)
    • 사는 이야기 (0)

블로그 메뉴

  • Github
  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • Algorithm
  • Bronze V
  • HTML
  • 알고리즘풀이
  • sql 문제풀이
  • 백준문제풀이
  • MySQL
  • 혼공SQL
  • BOJ
  • Bronze IV
  • 혼공MySQL
  • 혼자공부하는SQL
  • BRONZE
  • 알고리즘
  • BOJ algorithm
  • 백준알고리즘
  • Bronze III
  • react
  • 문제풀이
  • select
  • 프로그래머스
  • math
  • java algorithm
  • 백준
  • programmers
  • SQL고득점Kit
  • java
  • Scanner
  • 자바
  • SQL

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
달마루

기획자에서 개발자로

[백준] 2018 연세대학교 프로그래밍 경진대회 - 15667 Java[자바]
algorithm/백준

[백준] 2018 연세대학교 프로그래밍 경진대회 - 15667 Java[자바]

2023. 2. 9. 23:14

[Bronze III] 2018 연세대학교 프로그래밍 경진대회 - 15667

문제 링크

 

15667번: 2018 연세대학교 프로그래밍 경진대회

2015, 2016, 2017년에 이어 올해도 연세대학교 컴퓨터과학과 프로그래밍 경진대회가 열린다. 도현이는 4년 연속 교내대회가 개최된다는 것에 감격하여, 사비를 털 각오로 화려한 개막식을 준비했다.

www.acmicpc.net

성능 요약

메모리: 17728 KB, 시간: 212 ms

분류

사칙연산(arithmetic), 브루트포스 알고리즘(bruteforcing), 수학(math)

문제 설명

2015, 2016, 2017년에 이어 올해도 연세대학교 컴퓨터과학과 프로그래밍 경진대회가 열린다.

도현이는 4년 연속 교내대회가 개최된다는 것에 감격하여, 사비를 털 각오로 화려한 개막식을 준비했다.

도현이가 원하는 것은 폭죽으로, 강의실 A528에서 천장을 다 뚫어버리며 터지는 화려한 폭죽을 모두가 좋아할 것이라 생각했다. 도현이는 아래와 같이 터지는 폭죽을 주문하려 한다.

  1. 처음 발사된 폭죽이 만든 하나의 대형 불꽃은 적당한 높이에 도달하면 화려한 폭발과 함께 K개의 중형 불꽃으로 갈라진다.
  2. 각 K개의 중형 불꽃은 다시 각각 K개의 소형 불꽃으로 갈라지며 터진다.
  3. 그 이후 모든 불꽃은 소멸한다.

도현이는 적당한 폭죽을 찾아보려 했지만, 폭죽 판매처에서는 K의 값을 알려주지 않았고,

대신 폭죽 하나당 만들어지는 총 불꽃의 수(처음 터진 대형 불꽃을 포함해, 중형 불꽃과 소형 불꽃을 모두 포함한 수)만을 알려줬다. 결국 도현이는 어떤 폭죽이 적당할지 알아내지 못해 폭죽을 구매하지 못했다.

이에 도현이는 이 난제를 해결해주는 학생에게 이번 대회에서 맞은 문제 수를 하나 늘려주기로 하였다. 여러분은 대회에서 우승하기 위해, 폭죽이 만들 모든 불꽃의 개수가 주어지면 K의 값을 찾아보도록 하자.

입력

총 불꽃의 수 N이 주어진다. (3 ≤ N ≤ 10101)

출력

K의 값을 출력한다. 이 값은 정수임이 보장되며, 불가능한 경우는 입력으로 주어지지 않는다.




답 :n의 입력값으로 fire 의 값을 구한다. 

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
                Scanner sc = new Scanner(System.in);
                int n = sc.nextInt();

                int fire = 0;
                while (true) {
                    if (n == (1 + fire + fire * fire)) {
                        break;
                    }
                    fire++;
                    if (fire > 10101) {
                        break;
                    }
                }
                System.out.println(fire);
                sc.close();
            }
        }
저작자표시 비영리 변경금지 (새창열림)

'algorithm > 백준' 카테고리의 다른 글

[백준] 가장 많은 글자 -1371 Java[자바]  (0) 2023.02.11
[백준] 시그마 - 2355 Java[자바]  (0) 2023.02.10
[백준] 10부제 - 10797 Java[자바]  (0) 2023.02.08
[백준] 과자 - 10156 Java[자바]  (0) 2023.02.07
[백준] 도비의 영어 공부 - 2386 Java[자바]  (0) 2023.02.06
    'algorithm/백준' 카테고리의 다른 글
    • [백준] 가장 많은 글자 -1371 Java[자바]
    • [백준] 시그마 - 2355 Java[자바]
    • [백준] 10부제 - 10797 Java[자바]
    • [백준] 과자 - 10156 Java[자바]
    달마루
    달마루
    항상 어제보다 좋은 코드를 지향합니다. https://github.com/LimDongHyun99

    티스토리툴바