백준 알고리즘 문제의 단계별 문제의 5번. for문 파트입니다.
<출처 - 백준 알고리즘 문제 - 단계별 문제풀이 for 파트 6번 >
C언어입니다.
#include<stdio.h>
int main(){
int n;
scanf("%d",&n);
for (int i=n;i>=1;i--){
printf("%d\n",i);
}
}
C++입니다.
C++ 은 ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
3가지 구문을 추가해줍니다.
또 endl 대신 "\n"으로 처리해줍니다.
#include <iostream>
using namespace std;
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
int n;
cin>>n;
for (int i=n;i>=1;i--){
cout<<i<<"\n";
}
}
python입니다
sys.stdin.readline() 로 입력을 받으면 조금 더 빠른 입력을 받을 수 잇고 이를 int 형으로 형변환을 해줘야
개행문자 ("\n")등을 없애고 활용할 수 있습니다
파이썬의경우 for문을 역순으로 하는것에 대해 생소할 수 있습니다.
for i in range(a,0,-1):
라고 사용할 경우 i = a부터 0보다 클때까지 돌며 i 를 -1 씩 빼게된다로 이해하시면 됩니다
import sys
a=int(sys.stdin.readline())
for i in range(a,0,-1):
print(i)
Java입니다.
우선 자바는 Scanner로 입력을 받을 시 알고리즘 문제를 풀 때 속도가 느려 문제를 풀어도 시간초과가 납니다.
이때는 BufferReader 를 사용하여 입력을 받아
BufferWriter로 출력을 해주어야합니다.
매 입력과 출력을 프로그램과 저장소를 왔다갔다 하지 않고 중간에 모든 데이터를 실어 한번에 나르는 개념이라고 이해하시면됩니다.
우선
BufferedReader (임의의 버퍼리더이름) = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter (임의의 버퍼라이터이름) = new BufferedWriter(new OutputStreamWriter(System.out));
으로 선언하여 BufferedReader , BufferedWriter 를 선언합니다.
(임의의 버퍼리더이름).readLine(); 을 이용해 문자열을 입력받습니다
이를 Integer.parseInt(스트링값); 으로 정수로 변경해준 뒤 이를 포문에서 갯수로 취급합니다.
또 포문 내에서는
bw.write(i+ "\n"); 을통해 i를 줄단위로 넣고
bw.flush();를통해 모두 출력합니다.
import java.util.*;
import java.io.*;
class Main {
public static void main(String args[]) throws Exception {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int num = Integer.parseInt(br.readLine()); //총 입력받을 문자 수
for(int i=num; i>0; i--) {
bw.write(i+"\n"); //출력
}
bw.flush(); // 남아있는 데이터를 모두 출력
bw.close(); //닫음
}
}
이것으로 6번째 기본 for문 문제인 빠른 기찍 N을 풀어보았습니다.
'코딩 - > 백준 알고리즘 해설' 카테고리의 다른 글
백준 알고리즘 단계별 문제풀이 3 . for문 , A+B - 8 (백준 11022) (0) | 2021.07.06 |
---|---|
백준 알고리즘 단계별 문제풀이 3 . for문 , A+B - 7 (백준 11021) (0) | 2021.07.06 |
백준 알고리즘 단계별 문제풀이 3 . for문 , N 찍기 (백준 2741번) (0) | 2021.07.06 |
백준 알고리즘 단계별 문제풀이 3 . for문 , 빠른 A+B (0) | 2021.06.28 |
백준 알고리즘 단계별 문제풀이 3 . for문 , 합 (0) | 2021.06.28 |