본문 바로가기
Programming Practice/C++

백준 수학 문제

by TAMIK 2023. 1. 17.
728x90

백준 알고리즘 분류 - 수학 문제

C++

1110번 <더하기 사이클>

//B1110 수학/구현
#include <iostream>
using namespace std;

int main(){
    int N, N2, temp;
    int cnt=0;
    cin >> N;	//자연수 입력받기
    N2=N;	//새 숫자에 입력받은 자연수 초기값으로 설정
    
    while(true){
        temp = (N%10)*10 + (N/10+N%10) % 10;	//1의 자리 수 + 10의 자리 수
        cnt++;	//카운팅
        N = temp; //새롭게 생긴 temp 값을 초기값에 넘겨 주면서 temp=~계산 반복
        if(N2==temp) //초기 N값을 갖고 있는 N2랑 새로운 수인 temp가 같아지면 break
            break;
    }
    cout << cnt << endl; //카운팅 값 출력
}

 

11720번 <숫자의 합>

//B11720 수학/구현/문자열
#include <iostream>
using namespace std;
int main(){
    int n;
    cin >> n;
    char a;
    int sum = 0;
    for(int i=0; i<n; i++){
        cin >> a;
        sum += a-48;	//char로 받았기 때문에 아스키코드 '0'의 값인 48 빼줌
    }
    cout << sum << endl;
}

 

10869번 <사칙연산>

//B10869 수학/구현/사칙연산
#include <iostream>
using namespace std;
int main(){
    int a,b;
    cin >> a >> b;
    cout << a+b << '\n';
    cout << a-b << '\n';
    cout << a*b << '\n';
    cout << a/b << endl;
    cout << a%b << endl; //endl은 내부 버퍼까지 비우기 때문에 \n이 연산이 더 빠르다.
    
}

 

2739번 <구구단>

//B2739 수학/구현
#include <iostream>
int main(){
    int N;
    std::cin >> N;
    for(int i=1; i<10; i++)
        std::cout << N << " * " << i << " = " << N*i << '\n';
}

 

10818번 <최소, 최대>

//B10818 수학/구현
#include <iostream>
#include <algorithm>
using namespace std;
int main(){
    int n;
    cin >> n;
    int arr[1000001];
    for(int i = 0; i < n; i++)
        cin >> arr[i];
    sort(arr, arr + n);
    cout << arr[0] << " " << arr[n-1];
    return 0;
}
728x90

'Programming Practice > C++' 카테고리의 다른 글

백준 3009 C++  (0) 2023.09.01
백준 2530 C++  (0) 2023.08.30
배열  (0) 2023.01.17
배열/문자열  (0) 2023.01.04
C++ 기초  (0) 2022.12.08