BOJ 11720
2020-01-25
위 문제는 백준 사이트의 알고리즘 11720 문제에 관한 설명입니다.
문제
N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner sc= new Scanner(System.in);
int N = sc.nextInt();
String Num = sc.next();
int sum =0;
int array[]= new int[N];
for(int i = 0;i<N;i++)
{
array[i] = Integer.parseInt(Character.toString(Num.charAt(i)));
sum+=array[i];
}
System.out.println(sum);
}
}
제가 푼 소스코드 입니다.
String으로 한번에 받은뒤 charAt()으로 하나씩 만들어내고 String형으로 만들었다가 int형으로 변형시켰습니다.
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int a = scan.nextInt();
String sum = scan.next();
int result = 0;
if(!((1<=a)&&(a<=100))) {
System.exit(0);
}
for(int i = 0; i < a; i++) {
result += (sum.charAt(i)-'0');
}
System.out.println(result);
}// end of main
}
(sum.charAt(i) - ‘0’) 방법은 각 문자들에 대한 ASCII값을 구해서 더하는 방식입니다.
0의 ASCII값은 48인데 1에서 9는 차례대로 49에서 57이기 때문입니다.
사람마다 소스코드를 구성하는 방식이 다르다보니 쉬운 문제라도 다시 한번 생각하게 됩니다.
25일 하루종일 집에서 부스트코스 과제 보충을 했습니다.
기능적인 부분에선 상당히 잘돌아갔으나 HTML과 CSS 네이밍 컨벤션, html layout tag(nav, footer, article등)의 활용,
DateTimeFormatter와 같은 유용한 포매터를 추가적으로 사용했습니다. 보람찬 하루.