분류 전체보기 73

[백준] 8958번: OX퀴즈 | C++ 풀이

# 문제 OX퀴즈의 결과가 주어졌을 때, 점수를 구하는 프로그램을 작성하시오. # 풀이 입출력 버퍼 공부를 다시 해야겠다 느끼게 해준 문제... 왜냐? cin.ignore() 까먹었기 때문... 정답 소스코드를 바로 확인해보자! #include using namespace std; int main(){ ios_base::sync_with_stdio(false);// 두 표준 입출력 동기화 해제 cin.tie(NULL);// 입력과 출력 묶음을 풀기 int n; cin >> n; cin.ignore(); // 개행 버퍼 비우기 string str; while(n--){ getline(cin, str); int scoreSum = 0; int score = 1; for(int i=0; i

백준/C++ 2023.06.24

[백준] 2920번: 음계 | C++ 풀이

# 문제 연주한 순서가 주어졌을 때, 이것이 ascending인지, descending인지, 아니면 mixed인지 판별하는 프로그램을 작성하시오. # 풀이1 코드가 간단한 문제에 비해 길고 복잡한 것 같다. 아이디어가 떠오르면 무조건 그 방식을 고집해 푸는 것 좀 고치고 싶은데... 다방면으로 사고를 열도록 노력해야겠다. 구글링해서 찾아본 다른 방법까지 총 두 개의 방법을 포스팅한다. 우선 첫번째로 풀었던 정답 소스코드부터! #include using namespace std; int main(){ int num; cin >> num; if(num == 1){ for(int i=2; i> num; if(i != num){ cout > num; if(i != num){ cout

백준/C++ 2023.06.23

[백준] 2577번: 숫자의 개수 | C++ 풀이

# 문제 세 개의 자연수 A, B, C가 주어질 때 A × B × C를 계산한 결과에 0부터 9까지 각각의 숫자가 몇 번씩 쓰였는지를 구하는 프로그램을 작성하시오. # 풀이 목표로 했던 11단계까지 풀이는 마쳤고, solved.ac 기준 Class 1을 달성하기 위해 남은 문제들을 풀고 있다. 그래서 다시 간단한 문제들로 복귀! 정답 소스코드를 바로 확인해보자. #include using namespace std; int main(){ ios_base::sync_with_stdio(false);// 두 표준 입출력 동기화 해제 int a, b, c; cin >> a >> b >> c; int product = a*b*c; int num[10] = {0}; while(product>0){ num[produ..

백준/C++ 2023.06.22

[백준] 24262번: 알고리즘 수업 - 알고리즘의 수행 시간 1 | C++ 풀이

# 문제 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시간을 예제 출력과 같은 방식으로 출력해보자. MenOfPassion 알고리즘은 다음과 같다. # 풀이 시간복잡도를 고려하는 단계에 이르렀다! 문제에서 제시한 MenOfPassion 알고리즘을 먼저 살펴보면 아래와 같다. MenOfPassion(A[], n) { i = ⌊n / 2⌋; return A[i]; // 코드1 } 배열과 n이 주어지는데 이를 통해 i를 구한 후 배열 A의 i번째 원소를 반환하면된다. 입력에 제시된 n의 범위를 참고하면 어떤 n을 넣더라도 코드는 1회 수행, 수행시간은 상수 시간임을 알 수 있다. 따라서 시간 복잡도는 O(1)이고, 항상 1과 0을 개행하여 출력해주면 끝! #include using name..

백준/C++ 2023.06.16

[백준] 14215번: 세 막대 | C++ 풀이

# 문제 a, b, c가 주어졌을 때, 만들 수 있는 가장 큰 둘레를 구하는 프로그램을 작성하시오. # 풀이 따로 포스팅 하진 않았지만 삼각형 외우기의 다음 문제인 삼각형과 세 변 문제를 풀었다면 쉽게 풀었을 문제다. 그게 아니라도 삼각형의 성립 조건을 기억하고 있는 사람이라면 누구나 쉽게 풀 수 있다. 바로 정답 소스코드를 확인해보자. #include #include using namespace std; int main(){ int arr[3]; cin >> arr[0] >> arr[1] >> arr[2]; sort(arr, arr+3); if(arr[0] + arr[1]

백준/C++ 2023.06.15
728x90