미새문지

크래프톤 정글 week12, day93 - 잔디심기, 회원가입 페이지 수정, three.js 연습 본문

크래프톤 정글/TIL

크래프톤 정글 week12, day93 - 잔디심기, 회원가입 페이지 수정, three.js 연습

문미새 2024. 4. 9. 22:42
728x90
백준
2798
파이썬
브론즈2 블랙잭
import sys
input = sys.stdin.readline

n, m = map(int, input().split())
card = list(map(int, input().split()))
result = 0

for i in range(n):
    for j in range(i+1, n):
        for k in range(j+1, n):
            sum = card[i] + card[j] + card[k]
            if result < sum <= m:
                result = sum

print(result)

회원가입할 때 유효성 검사를 기본 설정에서 내가 원하는 대로 수정해주었다.

  • 이메일은 @포함 + @뒤의 알파벳은 2개에서 3개까지
  • 이름은 2글자에서 5글자까지
  • 닉네임은 2글자에서 6글자까지
  • 비밀번호는 영문 + 특수문자 포함 8글자에서 16글자까지
const emailRegex = /\S+@\S+\.\S{2,3}$/;
const nameRegex = /^[가-힣]{2,5}$/;
const nicknameRegex = /^[a-zA-Z0-9가-힣]{2,6}$/;
const pwRegex = /^(?=.*[A-Za-z])(?=.*[!@#$%^&*])(?=.{8,16})[A-Za-z\d!@#$%^&*]{8,16}$/;

 

그리고 회원가입 성공 시의 post url을 백엔드와 연동하기 위해 수정했다.

    const handleSubmit = async (e:any) => {
        e.preventDefault();

        if (!emailValid || !nameValid || !nicknameValid || !pwValid || !pwcheckValid) {
            alert("입력한 정보를 다시 확인해 주세요.");
            return;
        }

        const formData = {
            email,
            name,
            nickname,
            pw
        };

        try {
            const response = await axios.post('http://localhost:5000/api/users', formData, {
                headers: {
                    'Content-Type': 'application/json'
                }
            });
            alert('회원가입 성공!');
            console.log(response.data);
        } catch (error) {
            console.error('회원가입 에러:', error);
        }
    };

남은 시간에는 유튜브의 three.js 강의를 보며 연습 실습 진행

 

three.js 강의영상 따라 움직이는 3d큐브를 제작했다. 코드는 이해가 부족해 나중에 이해가 되었을 때 올리려고 한다.

 

학습 시간 : 10 ~ 23시

728x90