BeeTREE서비스 소개이용 규칙

서비스 소개

BeeTREE(비트리)는 알고리즘 문제를 풀고 채점받는 사이트이고, BeeGP(비지피)는 서버와 네트워크 설정을 연습하는 인프라 학습 사이트입니다. 계정 하나로 두 사이트를 함께 씁니다.

두 사이트를 어떻게 쓰는지 영상으로 먼저 볼 수 있습니다. 유튜브에서 보기

BeeTREE

알고리즘beetree.cc

알고리즘 문제를 20개 언어로 풉니다. 제출한 코드는 숨은 테스트 데이터로 채점합니다.

문제 화면의 편집기. 기초 100제 49번을 Python 3.14로 맞힌 모습입니다.

처음이라면

  1. 기초 100제를 1번부터 풉니다. 출력만 하는 문제에서 시작해 입출력, 조건문, 반복문, 배열, 문자열, 재귀 순으로 이어집니다.
  2. 코드를 제출하면 바로 결과가 나옵니다. 틀리면 BeeReview에 틀린 이유를 물어볼 수 있습니다.
  3. 맞힌 문제의 난이도에 따라 티어가 오르고, 같은 문제를 맞힌 사람들이 공유한 코드를 볼 수 있습니다.

BeeGP

인프라bgp.beetree.cc

서버와 네트워크 문제를 풉니다. 제출한 설정은 어떻게 동작하는지 계산해 채점하고, 실습 문제는 실제 Ubuntu VM에 들어가 고칩니다.

실습 터미널과 채점 결과. 리눅스 기초 1101번 실습을 맞힌 모습입니다.

처음이라면

  1. 리눅스 기초 문제집을 첫 문제부터 풉니다. 공식 문제집은 분야별로 6개이고, 앞쪽은 명령 몇 줄로 끝나는 문제입니다.
  2. 설정이나 실습 문제는 요구 사항마다 통과했는지 나오고, 통과하지 못한 항목에는 까닭이 적혀 나옵니다.
  3. 실습 문제는 실습 시작을 누르면 브라우저 터미널로 VM에 들어갑니다. 고친 뒤 채점을 누르면 VM 안의 상태를 확인합니다.

계정, 알림, 프로필, 커뮤니티, 그룹은 두 사이트가 함께 씁니다. 화면 위쪽(휴대폰은 메뉴 안)의 알고리즘/인프라 단추로 오갑니다. 이름은 자료구조 B-tree와 인터넷 경로를 주고받는 프로토콜 BGP에서 따왔고, 지문에 가끔 나오는 꿀벌 비는 BeeTREE라는 나무에 사는 꿀벌입니다.

BeeTREE

알고리즘

문제를 골라 코드를 제출하면 숨은 테스트 데이터로 채점하고, 맞힌 문제의 난이도에 따라 티어가 오릅니다.

문제
문제는 난이도, 분류, 맞힌 사람 수로 골라 풀 수 있습니다.
채점
제출한 코드는 격리된 컨테이너에서 숨은 테스트 데이터로 실행합니다. 20개 언어로 제출할 수 있고, 언어별 컴파일러 버전과 시간 제한 보정은 채점 환경에 정리해 두었습니다.
문제집

운영진이 순서대로 엮은 공식 문제집이 있고, 진도는 학습 로드맵에서 봅니다. 직접 문제집을 만들어 공유할 수도 있습니다.

다른 사람 코드
맞힌 문제는 같은 문제를 맞힌 사람들이 공유한 코드를 볼 수 있습니다. 맞히지 않은 문제의 코드는 잠겨 있습니다. 문제마다 코드 길이와 실행 시간 순위도 있습니다.
오늘의 문제
매일 자정(KST)에 한 문제씩 바뀝니다. 날마다 이어서 풀면 연속 풀이 일수가 쌓입니다.
시뮬레이터
정렬, 탐색, 그래프, 트리, 동적 계획법 같은 알고리즘이 한 단계씩 움직이는 모습을 시뮬레이터에서 봅니다. 입력값은 직접 바꿔 넣을 수 있습니다.
출제
로그인하면 문제를 낼 수 있습니다. 골드 이상, 푼 문제 50개 이상, 공개된 출제 문제 2개 이상을 채우지 못하면 관리자 검토를 거쳐 공개됩니다. 문제 등록 »

BeeGP

인프라

서버와 네트워크 설정을 연습하는 곳입니다. 설정 파일을 쓰거나 명령을 내는 문제부터 실제 Ubuntu VM에 들어가 고치는 실습까지 있습니다.

문제
리눅스, 네트워크, Cisco, 웹 서버, 보안, 컨테이너를 다룹니다. 객관식과 단답형부터 설정 작성, 셸 명령, 실습까지 답을 내는 방식은 13가지입니다. 유형별 채점은 채점 방식에 있습니다.
문제집

분야마다 하나씩 있는 공식 문제집입니다. 쉬운 문제부터 단원 순서대로 이어지고, 문제 화면에서 그 단원의 개념 노트를 펼쳐 볼 수 있습니다.

반복 연습
2진수 변환, 마스크 변환, 서브넷 계산, 같은 네트워크 판단, 포트 번호는 풀 때마다 문항이 새로 나옵니다. 한 판(10~12문항)을 모두 맞히면 정답입니다. 네트워크 기초 문제집에 들어 있습니다. 반복 연습 문제 »
다른 사람 답안

실습, CLI 시뮬레이션, IOS 설정, 설정 작성, 셸 명령 문제에는 명령 수나 답안 길이로 매긴 베스트 풀이 Top 3가 있습니다. 문제를 맞히면 그 답안을 펼쳐 볼 수 있고, 실습은 정답을 낸 사람이 터미널에 친 명령이 나옵니다.

맞히지 않은 문제의 다른 사람 답안은 BeeTREE 코드처럼 잠겨 있습니다.

시뮬레이터
라우팅(정적 경로, RIP, OSPF, HSRP, BGP), 스위칭(MAC 학습, VLAN, STP), 패킷(ARP, NAT, iptables), 서비스(TCP, DHCP, DNS, TLS)가 동작하는 과정을 시뮬레이터에서 단계별로 봅니다.
출제
로그인하면 퀴즈형(객관식, 복수 선택, 단답형, 순서 배열, 짝 맞추기)과 설정 작성, 셸 명령, 실습, IOS 설정, CLI 시뮬레이션, 토폴로지 구성, 경로 추적 문제를 낼 수 있습니다. 저장하기 전에 채점기로 적은 정답을 확인하고, 실습은 실제 VM에서 모범 풀이로 검사가 통과하는지 확인합니다. 관리자가 검토한 뒤 공개합니다. 문제 등록 »

BeeGP 채점 방식

인프라

설정 문제는 정답 파일과 글자를 맞춰 보지 않고, 제출한 설정이 어떻게 동작하는지 계산해 요구 사항을 만족하는지 봅니다. 그래서 표현이 달라도 결과가 같으면 정답이고, 겉보기에 비슷해도 동작이 다르면 오답입니다.

유형별 채점 방법 보기고르거나 적는 문제, 설정 파일을 쓰는 문제, 네트워크 장비를 다루는 문제, 실제로 실행해 보는 문제

고르거나 적는 문제

객관식, 복수 선택
고른 보기를 정답과 비교합니다. 복수 선택은 정답을 모두 고르고 나머지 보기는 하나도 고르지 않아야 맞습니다.
단답형
값이 같으면 표기가 달라도 맞은 것으로 봅니다. 앞뒤 공백은 무시하고, 255.255.255.0과 /24, 0755와 755, 1,024와 1024, ls -la와 ls -al도 같은 답으로 칩니다. 대소문자는 명령이나 URL을 적는 답에서만 구분합니다.
순서 배열, 짝 맞추기
정답 순서나 짝과 하나하나 비교합니다. 모두 맞아야 정답입니다.
반복 연습
2진수 변환 같은 계산 문항이 풀 때마다 새로 나옵니다. 한 판(10~12문항)을 모두 맞혀야 정답이고, 점수는 맞힌 문항 비율입니다. 틀린 문항에는 정답이 함께 나옵니다.

설정 파일을 쓰는 문제

nginx 설정
설정을 nginx 규칙대로 해석한 뒤, 테스트 요청마다 어느 server와 location이 받아서 무엇을 돌려주는지 계산합니다. 실제 nginx를 띄우지는 않습니다.
해석하는 범위

listen, server_name, default_server, location(=, ^~, ~, ~*), root, alias, index, try_files, return, rewrite, 단순한 if, proxy_pass 경로 치환, add_header 상속, error_page

iptables
명령 목록이나 iptables-save 출력을 읽어 규칙 표를 만들고, 테스트 패킷이 체인을 지나가는 과정을 따라갑니다. 결과가 같으면 규칙을 다르게 써도 정답입니다.
해석하는 범위

filter 테이블의 INPUT, OUTPUT, FORWARD, 사용자 체인, conntrack/state, multiport, iprange, icmp-type. nat, mangle 테이블은 채점하지 않습니다.

crontab
제출한 일정과 기준 일정이 2027년과 2028년 두 해 동안 같은 시각에 실행되는지 분 단위로 비교합니다. 다르면 처음 어긋나는 시각을 알려 줍니다.
해석하는 범위

5칸 형식, 범위·목록·간격, 월·요일 이름, @daily 같은 예약어, 일과 요일의 OR 규칙

systemd, Dockerfile
파일을 읽어 요구 항목을 하나씩 확인합니다. 키를 엉뚱한 섹션에 두거나 셸 형식 CMD를 쓰는 것처럼 실행은 되지만 문제가 되는 부분도 알려 줍니다.

네트워크 장비를 다루는 문제

Cisco IOS
입력한 명령을 IOS 규칙대로 해석해 장비 설정을 만들고, 장비 사이에 ping과 TCP 연결 요청을 보내 봅니다. 요청이 도착하고 응답까지 돌아와야 통과이며, 실패하면 어느 장비에서 왜 막혔는지 경로를 보여 줍니다.
해석하는 범위

인터페이스와 서브인터페이스, VLAN, 액세스·트렁크 포트와 DTP, 정적 경로, OSPF(단일 영역 수준), 표준·확장·이름 ACL, NAT·PAT, SSH와 line 설정. int g0/1, no shut처럼 줄여 쓴 명령도 해석합니다.

CLI 시뮬레이션
IOS 콘솔처럼 동작하는 터미널에 명령을 칩니다. 입력한 명령은 Cisco IOS 채점기로 해석해 채점하고, 푸는 동안 show와 ping으로 확인할 수 있습니다. 잘못 친 명령에는 실제 장비처럼 % Invalid input 같은 오류만 나옵니다.
해석하는 범위

사용자·특권·설정 모드, 축약과 Tab 완성, ? 도움말, show running-config, show ip interface brief, show ip route, show vlan brief, ping, traceroute

토폴로지 구성
케이블을 이은 모양과 PC 주소로 망을 만든 뒤, 요구한 통신을 실제로 흘려 봅니다. 결과가 같으면 다른 포트에 꽂아도 정답입니다.
경로 추적
주어진 설정으로 패킷을 보내 보고, 고른 경로와 결과가 시뮬레이터가 따라간 것과 같은지 봅니다. 스위치는 경로에 넣지 않습니다.

실제로 실행해 보는 문제

셸 명령
제출한 스크립트를 Ubuntu 24.04 샌드박스에서 실제로 실행합니다. 네트워크는 끊겨 있고 4초 안에 끝나야 하며, 예제 데이터와 숨은 데이터 모두에서 출력이 맞아야 정답입니다.
해석하는 범위

bash, GNU coreutils, gawk, sed, grep, find, sort, jq

실습
문제마다 Ubuntu 24.04 VM을 새로 띄웁니다. 브라우저 터미널로 들어가 고친 뒤 채점을 누르면 채점기가 VM 안에서 서비스 상태와 파일, 실제 응답을 확인합니다. 어떤 명령을 썼는지는 채점에 쓰지 않습니다. VM 규칙은 실습 VM에 있습니다.

채점기가 해석하지 못한 명령은 결과 화면의 참고 메시지에 나옵니다. 실제 장비에서는 되는데 채점기에서 막히는 경우가 있으면 디스코드나 커뮤니티에 알려 주세요.

실습 VM

인프라

실습 문제는 문제마다 Ubuntu 24.04 VM을 새로 띄워 브라우저 터미널로 들어갑니다. 시간은 10분이고 5분씩 4번까지 늘릴 수 있습니다.

  • 정답을 내면VM을 바로 정리합니다.
  • 자리를 비우면터미널 화면을 닫고 10분 동안 입력이 없으면 VM을 회수합니다.
  • 횟수한 번에 하나만 띄울 수 있고, 하루(KST 0시 기준) 30번까지 만들 수 있습니다.
VM이 뜨는 곳
BeeGP 전용 Proxmox 서버에서 뜹니다. 실습 시작을 누르면 미리 부팅해 둔 VM 하나에 문제 상황을 만들어 넘겨 주므로 보통 몇 초면 터미널이 열립니다. 네트워크 실습처럼 VM이 여러 대 필요한 문제는 그 VM들만 따로 묶인 망에 함께 뜹니다.
권한과 망
VM 안에서는 sudo로 root 권한을 쓸 수 있습니다. 실습망은 인터넷과 학교·운영망에 닿지 않고, 다른 사람의 VM과도 떨어져 있습니다. 끝난 VM은 디스크까지 지웁니다.
친 명령
채점은 VM 안의 상태만 보고, 어떤 명령을 썼는지는 보지 않습니다. 다만 실습을 시작해 정답을 낼 때까지 친 명령은 기록되어, 베스트 풀이 Top 3에 들면 이 문제를 맞힌 사람이 볼 수 있습니다.
Cisco
IOS처럼 동작하는 시뮬레이터로 연습합니다. 실제 IOS 이미지를 쓰는 실습은 학교 내부 실습 환경에서 따로 열 예정입니다.

두 사이트에 함께 있는 것

계정 하나로 쓰는 기능입니다. 알고리즘 문제와 BeeGP 문제를 함께 다룹니다.

대회
개인전과 팀전을 열 수 있습니다. 그룹 연습 대회가 아니면 운영진이 확인한 뒤 공개됩니다.
1:1 듀얼
다른 사람의 프로필에서 알고리즘이나 BeeGP 듀얼을 신청합니다. 난이도 범위와 제한 시간(15, 30, 60분)을 정하면 두 사람 모두 풀지 않은 문제가 나오고, 먼저 맞힌 쪽이 이깁니다.
그룹
스터디 그룹을 만들어 알고리즘과 BeeGP 문제를 섞어 숙제를 내고, 멤버별 풀이 현황과 학습 단계를 관리합니다.
커뮤니티
질문, 오류 신고, 스터디 모집 글을 함께 씁니다. 문제 화면의 오류 신고 버튼을 누르면 출제자에게 알림이 갑니다.
BeeHint, BeeReview

BeeHint는 막힌 문제에서 정답 대신 풀이 방향을 알려 줍니다. BeeGP에서는 실습 터미널 아래에 있고, 지금 터미널 화면을 보고 다음에 확인할 곳을 짚습니다. BeeReview는 제출한 코드나 설정을 읽고 틀린 이유나 고칠 점을 짚습니다.

운영진 서버에서 돌리는 언어 모델이 답하므로 틀린 말을 할 때가 있고, 대회에서는 대회 설정에 따라 꺼져 있을 수 있습니다.

약점 리포트
최근에 틀린 문제를 바탕으로 부족한 개념과 다음에 풀 문제를 골라 줍니다.
업적
풀이 수, 연속 풀이, 대회 참가 같은 기록에 따라 열립니다. 지금 92개가 있습니다.

난이도와 티어

두 사이트 모두 문제 난이도를 7단계, 단계마다 V부터 I까지 다섯 칸으로 나눈 35단계로 매깁니다. 숫자가 작을수록 어렵습니다. 단계 이름만 다르게 불러서 알고리즘은 브론즈부터 그랜드마스터까지, BeeGP는 리눅스 권한 이름인 nobody부터 root까지입니다.

티어 점수알고리즘과 BeeGP는 따로 셉니다
어려운 100문제의 난이도 점수 합푼 문제 가운데 어려운 100문제, 문제마다 1~35점
풀이 수 보너스푼 문제 5개마다 1점, 최대 200점
  1. 브론즈nobody난이도 1~5티어 점수 1점부터nobody: 권한은 없어도 일단 들어왔어요.
  2. 실버guest난이도 6~10티어 점수 200점부터guest: 둘러볼 수는 있어요.
  3. 골드user난이도 11~15티어 점수 550점부터user: 내 홈 디렉터리는 내 마음대로.
  4. 플래티넘staff난이도 16~20티어 점수 1,100점부터staff: 팀 공용 폴더에도 손댈 수 있어요.
  5. 다이아몬드sudoer난이도 21~25티어 점수 1,800점부터sudoer: sudo 한 줄이면 웬만한 건 다 돼요.
  6. 마스터admin난이도 26~30티어 점수 2,600점부터admin: 서버를 통째로 맡겨도 되는 사람.
  7. 그랜드마스터root난이도 31~35티어 점수 3,400점부터root: 모든 권한과 모든 책임을 가져요.

난이도는 운영진이 처음 정하고, 문제를 맞힌 사람들의 평가를 받아 고칩니다. 문제 화면 아래 난이도 평가 상자에서 투표할 수 있고, 평가가 적은 문제는 기여하기(알고리즘, BeeGP)에 모아 두었습니다. 난이도가 바뀌면 그 문제를 푼 사람의 티어 점수도 다시 계산합니다.

만든 사람들

운영
남영동개발추진위원회가 만들고 운영합니다. namyeong.dev, 인스타그램 @namyeong.dev
후원
서버와 호스팅 비용은 nexsyslab이 후원합니다.
문의
질문이나 버그 제보는 공식 디스코드나 커뮤니티에 남겨 주세요. 문제 지문이나 테스트 데이터가 틀렸다면 문제 화면의 오류 신고 버튼이 가장 빠릅니다.