일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- RETROFIT
- 데이터바인딩
- okHttp
- 셀레니움
- 필답고사
- LRU
- ViewPager2
- Clean Architecture
- 수리통계
- kotlin
- 안드로이드 플랫폼
- gson
- RecyclerView
- 안드로이드 API
- TODO
- REST API
- AndroidX
- Java
- TabLayout
- 통계대학원
- Android 컴파일
- Android
- github api
- python3
- Kotiln
- Devexpress
- 백준 15686
- 웹 크롤링
- ViewModel
- FragmentStateAdapter
- Today
- Total
그냥 가끔의 기록장
백준 2741, 2742 본문
거의 동일한 문제라 백준 2741, 2742는 같이 풀이한다.
백준 2741 문제
문제 풀이
그냥 1부터 n까지 for문을 이용해 printf를 사용하면된다.
다만, 출력시 1부터 n까지를 1씩 증가하며 출력해야 하므로 반복문의 조건에 유의해야한다.
<잠시 for문 설명>
for문은 크게 세 덩이로 구성되어 있는데, 각각 초기식, 조건식, 증감식이라 부른다. (명칭은 그냥...알아두면 좋으니까)
1) 초기식에선 일반적으로 for문에서 쓰일 변수를 초기화한다.
2) 조건식에선 for문의 범위를 정한다. 위의 문장을 예로 들면 i는 n+1보다 작을때까지 for문이 반복되는 것이다.
3) 증감식에선 for문 (함수)의 증가, 감소를 결정한다. 여기선 i++;로 i를 1씩 증가시키고 있다.
* for문에서 초기식, 조건식, 증감식은 일부 생략가능하며 변수 선언도 for문 밖에서 해도 된다. (여기선 설명 생략)
<다시 문제풀이>
여기선 1부터 n까지 i를 1씩 증가해 출력해야하므로
for(int i=1; i<n+1; i++) 이렇게 사용해야 한다.
전체 코드는 아래와 같다.
백준 2742 문제
문제 풀이
이 문제는 앞서 2741과 같으나 출력 형식에 주의해야한다.
1부터 n까지의 정수를 출력하는 것은 동일하지만 1부터 n이 아닌 n부터 1까지 거꾸로 출력해야 한다.
그렇다면 우리는 i의 값을 출력하는 것이므로 i의 초기값이 n이어야 한단 걸 알 수 있다. 또한, n이 1씩 감소해야 하므로 증감식은 i--;가 되며 i가 1이되면 출력을 멈추고 for문을 빠져나와야 하므로 조건식은 i>0; 이어야 한다.
전체 코드는 아래와 같다.
'기타 개발 > 백준 문제풀이' 카테고리의 다른 글
백준 2438, 2439 (0) | 2020.02.26 |
---|---|
백준 11021, 백준 11022 (0) | 2020.02.26 |
백준 15552 (0) | 2020.02.26 |
백준 8393 (0) | 2020.02.26 |
백준 10950 (0) | 2020.02.26 |