[계획]
1. 백준 실버5 이상으로 1문제 풀기.
그리고 현재 flutter로 firebase와 연동해 앱을 만들고있다.
오늘 공부해볼 기능은 firebase에 저장되어있는 계정정보들을 사용해
로그인기능을 구현하는 기능이다. 따라서
2. flutter로 로그인기능 구현하기.
그 후 마지막 한시간동안 팀원들과
3. 채팅창을 구현하고 사진 또는 파일까지 전송 가능하도록 구현하기.
를 할 것 이다.
[회고]
1. 백준 1676 factorial값의 뒤에서부터 0이 아닌 수까지의 0의 개수를 구하는 문제를 풀었다.
문제 : https://www.acmicpc.net/problem/1676
1676번: 팩토리얼 0의 개수
N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오.
www.acmicpc.net
1) 1차시도 시 모든 factorial의 값을 전부 계산한 뒤 10으로 나눠가며 나머지가 0이 아닐때까지 count를 셌다.
하지만 시간초과가 떴다.
생각해보니 줄 수 있는 입력값 중 가장 큰 값인 500의 factorial은 엄청나게 큰 수였기 때문이다.
2) 다시 생각해 보니 0의 개수는 10의 n승에서의 n만큼 0이 있는 것이고, 10이 생기려면 2와 5가 있으면 된다.
따라서 모든 factorial의 값을 전부 계산하는 것이 아닌 1부터 입력값까지의 수 중에서 2와 5의 개수를 세었다.
소인수분해를 했을 때 항상 2의개수 >= 5의개수이므로 5의 갯수를 세어주었다.
ex) 30 소인수분해 시 => 2 * 3 * 5 이므로 0의 개수 : 1
아래는 최종코드이다.
import java.util.*;
public class facto_zero_1676 {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int N = sc.nextInt(); // 1 <= N <= 500
sc.close();
int count = 0; //0의 갯수
while(N >= 5){
count += N/5;
N /= 5;
}
System.out.println(count);
}
}
2. flutter로 로그인기능을 열심히 공부해봤다.
유튜브와 구글링을 통해 조금씩 알아가는 중이다.
오늘은 firebase에 연결시켰고, firebase에 있는 값을 불러오는 부분을 공부해봤다.
firebase는 google에서 개발해서 google로 로그인기능도 있지만 나는 email과 password를 통한 login기능을 공부하고 있다.
3. 채팅창을 구현하고 사진 또는 파일까지 전송 가능하도록 구현하기.
이 활동에서는 오늘 팀원들과 역할분배를 하였다.
[서버 - 1명 / 클라이언트 - 1명 / 사진 전송기능 - 1명 / 파일 전송기능 - 1명]
역할은 이렇게 나누었고, 이 역할들 중 나는 서버구현을 담당했다.
우리의 chatting은 소켓을 통한 통신으로 할 생각이다.
'2022-winter-mogakko' 카테고리의 다른 글
2022-모각코 6차시 활동 계획 및 결과 (0) | 2022.02.04 |
---|---|
2022-모각코 5차시 활동 계획 및 결과 (0) | 2022.02.04 |
2022-모각코 4차시 활동 계획 및 결과 (0) | 2022.02.04 |
2022-모각코 2차시 활동 계획 및 결과 (0) | 2022.02.04 |