2292번 - 벌집 c언어
2975 단어 백준 문제풀이 c언어백준 문제풀이 c언어
접근 방법
- 처음엔 당황했다.
- 정신을 차려보니 패턴이 보이기 시작했다.
- 패턴은 한바퀴를 돌때마다 6*N 의 방식이였다.
- 패턴대로 코드에 적용시켜보았다.
#include <stdio.h>
long long num, ans= 1, check_number; // 숫자의 범위가 10000000000이여서 longlong 으로 선언
int main(){
scanf("%lld", &num);
for(int i=1; check_number*6+1<num;i++){ // 한바퀴씩 돌아보는 것을 for문으로 작성
check_number += i; // 한바퀴씩 돌때마다 check_number에 i를 더해줌
ans++; // 다음 바퀴로 갈때마다 정답에 1씩 더해준다.
}
printf("%lld\n", ans);
return 0;
}
느낀점
#include <stdio.h>
long long num, ans= 1, check_number; // 숫자의 범위가 10000000000이여서 longlong 으로 선언
int main(){
scanf("%lld", &num);
for(int i=1; check_number*6+1<num;i++){ // 한바퀴씩 돌아보는 것을 for문으로 작성
check_number += i; // 한바퀴씩 돌때마다 check_number에 i를 더해줌
ans++; // 다음 바퀴로 갈때마다 정답에 1씩 더해준다.
}
printf("%lld\n", ans);
return 0;
}
수학만 하려하면 머리가 아프다. 짧은 코드로 끝냈지만 상당히 고민을 많이 했던 문제다. 이번 문제에서는 long long 선언에 대해 다시 한번 공부하는 시간이였다. 그리고 색다른 for 문 활용으로 문제를 짧게 푼것에 아주 뿌듯하다. 다음에도 할수 있을까 확신이 서진 않는다. 여러번 활용해서 풀어봐야겠다.
Author And Source
이 문제에 관하여(2292번 - 벌집 c언어), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@os1227os/백준-2292번-벌집-c언어저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)