Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- 스파르타코딩클럽
- c#문제
- c#프로그래머스기초문법
- 시샵
- 티스토리챌린지
- unity3dservival
- 유니티공부
- 유니티
- 유니티3dui
- 유니티서바이벌게임만들기
- Unity
- unity3d게임만들기
- 오블완
- c# 백준
- C#문법
- 유니티게임만들기
- c#기본문법
- c#기초문법
- c#코딩기초트레이닝
- c# c#프로그래머스
- 스파르타
- 유니티상호작용
- unity게임만들기
- unity게임
- 시샵문법
- unity공부
- c#코테
- unity3d
- c#
- C++문법
Archives
- Today
- Total
나 개발자 진짜 되냐?
바킹독 0x01 문제3 본문
오늘은 3번을 풀어보자
if ( N 루트 씌워서 딲 떨어지면 ) return 1;
아니면 return 0;
인건 알겠는데..
N이 10억이하의 자연수인 게 마음에 걸린다.
엄청 큰 숫자인데..
시간복잡도에 따라 천차만별일거라고 예상된다.
혼자 열심히 써보았다.
아쉬운 부분은 i가 1부터 올라가면서 1의 제곱이 N과 일치하는지 보기 때문에
i < 2/N이 아니라
i * i 가 N보다 작거나 같을때까지 돌리는 게 맞다.
그래서 답은
이렇게 나와야 한다!
생각보다 쉬워서 다행이었다.
아니면..내가 잘한 걸 지도? ㅎㅎㅋ
* 번외
알고리즘 대회나 고성능 요구환경에서는 sqrt 방식을 추천한다고 한다.
sqrt는 제곱근을 구할때 사용하는 함수이다.
지선생의 말씀이라 굳이 굳이 싶었지만ㅎㅋ 함께 보자.....
라이브러리 불필요한 위의 방식과 다르게
sqrt는 반복문도 없고 메모리도 거의 안 쓰는
라이브러리 형식이라고 한다.
이 친구를 쓰려면
#include <cmath> 를 써줘야 한다!
중요한 부분은 제곱근 라이브러리다 보니 실수형이라..
기본 반환값이 double이고,
int로 바꿔주려면 int root = (int)라고 써줘야 한다.
sqrt(N)은
N에 루트를 씌웠다는 뜻이 된다.
참 간단하긴 하네 ㅎㅎㅋ
하지만 내가 이걸 다 학습할 수 있을까?
'C++을 시작해봐요! > 알고리즘을 공부해봐요!' 카테고리의 다른 글
바킹독 0x02 문제2 - A+B / 백준 1000번 / vs코드 local : test failed 오류 (0) | 2025.05.19 |
---|---|
바킹독 0x02 문제1 - X보다 작은 수 / 백준 10871번 (0) | 2025.05.16 |
바킹독 0x01 문제4 (0) | 2025.05.14 |
바킹독 0x01 문제2 (0) | 2025.04.23 |
바킹독 0x01 문제1 (0) | 2025.04.15 |