코트카타
45) 시저 암호
나의 풀이
class Solution {
public String solution(String s, int n) {
char[] chars = s.toCharArray();
for (int i = 0; i < chars.length; i++) {
char c = chars[i];
if ((c>=65 && c<=90) || (c>=97 && c<=122)){
if ((c<=90)){
c = (c+n>90)? (char) (c+n-26):(char) (c + n);
}
if ((c>=97)){
c = (c+n>122)? (char) (c+n-26):(char) (c + n);
}
chars[i] = c;
}
}
return String.valueOf(chars);
}
}
if문을 계속 쓴 점이 마음에 들지 않았다.
그래서 삼항 연산자를 사용해봤다.
다른 분들의 풀이
class Caesar {
String caesar(String s, int n) {
String result = "";
n = n % 26;
for (int i = 0; i < s.length(); i++) {
char ch = s.charAt(i);
if (Character.isLowerCase(ch)) {
ch = (char) ((ch - 'a' + n) % 26 + 'a');
} else if (Character.isUpperCase(ch)) {
ch = (char) ((ch - 'A' + n) % 26 + 'A');
}
result += ch;
}
return result;
}
public static void main(String[] args) {
Caesar c = new Caesar();
System.out.println("s는 'a B z', n은 4인 경우: " + c.caesar("a B z", 4));
}
}
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/12926/solution_groups?language=java
기초 프로젝트 트러블슈팅
mac@macs-MacBook-Pro nbcNewsFeed % git push origin feat/auth remote: Permission to nbcNewsFeed/nbcNewsFeed.git denied to codingTrip-IT. fatal: unable to access 'https://github.com/nbcNewsFeed/nbcNewsFeed.git/': The requested URL returned error: 403
git push origin feat/auth 시 403 Forbidden 오류가 발생한 이유는 권한 문제이다.
이 방법을 사용하기 전까지 계속 30분 이상 방법을 팀원들과 찾았다 ㅠㅠ
HTTPS 대신 SSH 방식으로 변경
HTTPS 방식(https://)이 아닌 SSH(git@github.com:...)를 사용하면 인증 문제가 줄어든다고 한다.
1. 먼저 SSH 키가 있는지 확인하기
ls -al ~/.ssh
만약 키가 없다면 새 SSH 키 생성 :
ssh-keygen -t rsa -b 4096 -C "my_email@example.com"
SSH 키를 GitHub에 등록
- cat ~/.ssh/id_rsa.pub 명령어로 공개 키 확인 후
- GitHub > Settings > SSH and GPG keys 에 추가
원격 저장소를 SSH로 변경:
git remote set-url origin git@github.com:nbcNewsFeed/nbcNewsFeed.git
변경 사항 확인:
git remote -v
다시 푸시:
git push origin feat/auth
git branch를 처음 만들어서 해보는데 신고식이었던 것 같다.
'CODING > 스파르타 내일배움캠프 TIL' 카테고리의 다른 글
42_최소직사각형_일정관리 Develop 과제 해설_25.2.13(목) (0) | 2025.02.14 |
---|---|
41_크기가 작은 부분 문자열_일정관리 Develop 주석 작성(Javadoc) 및 리팩토링_25.2.12(수) (0) | 2025.02.12 |
40_삼총사_JPA, 연관관계 실시간 구현 세션_일정관리 Develop 리팩토링_25.2.11(화) (0) | 2025.02.11 |
39_이상한 문자 만들기_일정관리 Develop 개인과제 Lv 5,6,7,8 도전과제 구현완료(튜터님 피드백 필요)_25.2.10(월) (0) | 2025.02.10 |
38_3진법 뒤집기_일정관리 Develop 개인과제 Lv 2,3,4 필수과제 구현완료_25.2.7(금) (0) | 2025.02.07 |