[백준/c++] 24228번: 젓가락
[문제]
[풀이]
- 먼저 입력 조건에 1<=N,R<=10^18 이므로 범위를 주의해야 한다.
- N: 젓가락 종류, R: 맞춰야 하는 짝의 갯수
- 최악의 경우는 종류별로 1개씩은 뽑은 다음에 그중 임의의 R쌍만큼 짝을 맞추면 된다.
- 나는 간단하게 생각하기 위해 한종류로 R쌍을 맞춘다고 생각하고, 나머지 종류들이 각각 1개씩 있는 경우를 생각하며 나타냈다. (여러종류가 2쌍 만족하고, 그외 나머지 종류가 1개씩 있는 경우도 답은 같음)
-> result= r*2+(n-1) 과 같다.
<c++ 데이터 형식 범위>
유형이름 | 바이트 | 범위 |
---|---|---|
(signed)int | 4 | -2,147,483,648 ~ 2,147,483,647 |
unsigned int | 4 | 0 ~ 4,294,967,295 |
char | 1 | -128~127 |
unsigned char | 1 | 0~255 |
short,(signed)shor int | 2 | -32,768 ~ 32,767 |
(signed)long long | 8 | -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 |
unsigned long long | 8 | 0 ~ 18,446,744,073,709,551,615 |
bool | 1 | true or false |
float | 4 | 3.4E+/-38(7개의 자릿수) |
double | 8 | 8 1.7E+/-308(15개의 자릿수) |
[코드]
//24228번: 젓가락
#include <iostream>
using namespace std;
long long func(long long n,long long r){
// if(n==1)
// return 2*r; //n=1일경우 별도의 처리를 해야될줄 알았는데 안해도 된다.
long long result=0;
result = r*2+(n-1);
return result;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
long long n,r;
cin>>n>>r;
cout<<func(n,r)<<"\n";
}
Author And Source
이 문제에 관하여([백준/c++] 24228번: 젓가락), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@somyeong0623/백준c-24228번-젓가락저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)