본문 바로가기
Language/C++

[C++_백준] 16394, 15894

by 전전긍긍 2022. 2. 4.

16394. 홍익대학교

 

문제

홍익대학교는 1946년에 개교하였다.

특정 년도가 주어졌을 때, 그 해가 개교 몇 주년인지 출력하라.

단, 홍익대학교는 없어지지 않는다고 가정한다.

문제는 C, C++, JAVA 또는 Python3을 이용하여 해결한다.

 

  1. C++
    1. 입력
      • cin 사용
      • 예) cin >> var;
    2. 출력
      • cout 사용
      • 예) cout << var;
    3. 필수 라이브러리 iostream
    4. 권장사항
      • using namespace std;
      • ios::sync_with_stdio(false);
      • cin.tie(NULL);

 

입력

 

입력으로 첫 줄에 특정 년도를 알리는 정수 N이 주어진다. 정수 N은 1,946 부터 1,000,000 사이의 값이다. (1,946 ≤  N ≤  1,000,000)

 

출력
 

출력으로 홍익대학교의 개교 주년을 나타내는 정수를 출력한다.

 

소스코드
#include <iostream>
using namespace std;

int main() {
	ios::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);

	int n;
	cin >> n;

	const int HONG = 1946;

	cout << n - HONG << "\n";

	return 0;
}

15894. 수학은 체육과목 입니다

 

문제

성원이의 친구 형석이는 근성과 체력으로 수학 문제를 푸는 것은 굉장히 무식한 방법이라고 생각한다. 형석이는 수학을 공부하면 문제를 훨씬 빨리 풀 수 있다는 것을 알려주기 위해 위 사진에 나와있는 문제를 갖고 성원이와 퀴즈 내기를 하기로 했다. 위 사진의 문제를 다시 정리하면 아래와 같다.

"한 변의 길이가 1인 정사각형을 아래 그림과 같이 겹치지 않게 빈틈없이 계속 붙여 나간다. 가장 아랫부분의 정사각형이 n개가 되었을 때, 실선으로 이루어진 도형의 둘레의 길이를 구하시오."

가장 아랫부분의 정사각형 개수가 주어지면 그에 해당하는 답을 출력하는 프로그램을 만들어 형석이를 도와주자!

 

입력

첫 번째 줄에 가장 아랫부분의 정사각형 개수 n이 주어진다. (1 ≤ n ≤ 10)

 

출력

첫 번째 줄에 형석이가 말해야 하는 답을 출력한다.

 

소스코드
#include <iostream>
using namespace std;

int main() {

	unsigned n;
	cin >> n;

	cout << n * 4;

	return 0;
}

 

💡이 문제의 핵심은 범위이다. (1 ≤ n ≤ 10)

자료형 크키 범위 비고
char 
signed char
1바이트, 8비트 -128~127  
unsigned char 1바이트, 8비트 0~255  
short 
short int
2바이트, 16비트 -32,768~32,767 int 생략 가능
unsigned short 
unsigned short int
2바이트, 16비트 0~65,535 int 생략 가능
int
signed int
4바이트, 32비트 -2,147,483,648~ 2,147,483,647  
unsigned 
unsigned int
4바이트, 32비트 0~4,294,967,295 int 생략 가능
long
long int
signed long
signed long int
4바이트, 32비트 -2,147,483,648~ 2,147,483,647 int 생략 가능
unsigned long 
unsigned long int
4바이트, 32비트 0~4,294,967,295 int 생략 가능
long long 
long long int 
signed long long 
signed long long int
8바이트, 64비트 -9,223,372,036,854,775,808~
9,223,372,036,854,775,807
int 생략 가능
unsigned long long 
unsigned long long int
8바이트, 64비트 0~18,446,744,073,709,551,615 int 생략 가능

 


[참고자료]

 

자료형 범위 표 참고

http://melonicedlatte.com/algorithm/2018/03/04/022437.html

 

C/C++ 에 존재하는 모든 자료형 개념 총 정리 - Easy is Perfect

알고리즘 문제 풀이 시에, 모르는 게 많이 생기게 됩니다. 특히 자료형에 대한 게 많이 헷갈리는 경우가 존재합니다. 어떤 문제는 long long 자료형을 써야할 때가 있고 (int 형의 범위를 초과해서)

melonicedlatte.com