BOJ | 10171번
Python 풀이
print("\ /\\\n ) ( ')\n( / )\n \(__)|")
print("\ /\\\n ) ( ')\n( / )\n \(__)|")
Escape Code | 설명 |
---|---|
\n | 줄 바꿈 |
\t | tab (indent) |
\r | Carriage return |
\\ | \출력 |
\' or \" | ' or " 출력 |
>>> print("Hello\nWorld!")
Hello
World!
>>> print("Hello\tWorld!")
Hello World!
>>> print("Hello\rWorld!")
World!
\n
은 표준 입력에서 줄을 바꿔서 출력해준다.\t
는 표준 입력에서 indent(들여쓰기)를 해준다. 한글 문서에서 Tab키를 누르는 것과 같음.\r
는 Carriage return이라고도 부르는데 커서를 가장 앞으로 보낸다.
즉,print("Hello World!")
는Hello World!
를 출력하지만
print("Hello\rWorld!")
는 문자열을 왼쪽에서부터 출력하면서
Hello
까지 출력을 하지만 캐리지 리턴(\r
)를 만나면서 커서가Hello
의 H 앞으로 이동하게 된다. 따라서 뒤에오는World!
가 덮여서 출력된다.\\
는\
를 출력하게 해준다.\'
,\"
도\\
와 마찬가지로'
,"
를 출력하게 해준다.'
,"
만 사용했을 경우는 출력이 안된다! 문자열을 감싸는 아스키 코드로 인식해버리기 때문이다.
C++ 풀이
#include <iostream>
using namespace std;
int main()
{
cout << "\\ /\\\n ) ( ')\n( / )\n \\(__)|";
}
#include <iostream>
using namespace std;
int main()
{
cout << "\\ /\\\n ) ( ')\n( / )\n \\(__)|";
}
파이썬 풀이와 비슷하지만 파이썬에서는 \(역슬래쉬)뒤에 Escape code가 아니면 그냥 출력해준다.
\t, \r, \n, \\, \', \", \b
등 Escape code가 인식되면 그 코드를 처리하지만 \(
와 같은 경우는 그냥 출력한다.
그러나 C++에서는 그냥 \
가 나오면 \\
로 출력하는 것이 아닌 이상 \
를 출력하지 않는다. 따라서 C++ 풀이에서 \
를 출력해야 하는 부분에는 무조건 \\
를 해주었다.
Author And Source
이 문제에 관하여(BOJ | 10171번), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@hrpp1300/BOJ-10171번저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)