백준(baekjoon)-C++ 정리

SUIN·2022년 5월 5일
0

백준/프로그래머스

목록 보기
11/18
post-thumbnail

13866 팀 나누기

#include <iostream>
#include <math.h>

using namespace std;

int main() {
	int a, b, c, d, min;
	cin >> a >> b >> c >> d;
	if (abs((a + b) - (c + d)) > abs((a + c) - (b + d)))
		min = abs((a + b) - (c + d));
	else
		min = abs((a + c) - (b + d));

	if (min > abs((a + d) - (b + c)))
		min = abs((a + d) - (b + c));

	cout << min;
}
  1. ab,cd/ ac,bd/ ad,bc 팀이 되는 경우를 모두 비교해보고 두 팀간의 절댓값의 최솟값을 찾아서 출력
#include <iostream>
#include <math.h>
using namespace std;

int main() {
	int a, b, c, d, minn, maxx;
    int team1, team2;
	cin >> a >> b >> c >> d;
    minn=min(min(a,b),min(c,d));
    maxx=max(max(a,b),max(c,d));
    team1=minn+maxx;
    team2=(a+b+c+d)-team1;
   
	cout << abs(team1-team2);
}
  1. 각 선수들 중 가장 낮은 사람과 높은 사람을 찾고, 둘을 팀으로 만들고 남은 둘을 팀으로 만든 후 팀간의 차이를 출력

14652 나는 행복합니다~

#include <iostream>

using namespace std;

int main() {
	int n, m, k;
	cin >> n >> m >> k;

	cout <<k/m << " " <<k%m ;

	return 0;
}

x축: 번호를 행으로 나눈 몫
y축: 번호를 행으로 나눈 나머지


15733 나는 누구인가

#include <iostream>

using namespace std;

int main() {
	cout << "I'm Sexy";
	return 0;
}

good


15873 공백 없는 A+B

#include <iostream>

using namespace std;

int main() {
	int inp, a,b;
	cin >> inp;
	if (inp > 1000) {
		a = 10;
		b = 10;
	}
	else if (inp > 100) {
		if (inp % 10 == 0) {
			a = inp / 100;
			b = 10;
		}
		else {
			a = 10;
			b = inp % 10;
		}

	}
	else {
		a = inp / 10;
		b = inp % 10;
	}

	cout<<a+b;
	return 0;
}

입력받은 수가 1000이 넘는경우: 입력의 가정에서 불필요한 0은 없다는 가정 하에 1010인 경우만이 가능하므로,a와 b를 모두 최댓값인 10으로 설정.
100만 넘는 경우: 맨 끝자리가 0일경우에는 b를 10으로, a를 100의자리 수로 지정하고 아닌 경우에는 b를 1의자리수로 지정하고 a를 10으로 지정.
100을 넘지 못하는 경우: 십의자리:a, 일의자리:b로 지정

둘을 더한 값을 출력


profile
공부하기싫을때붙잡고공부해봤자비명밖에안나옵니다지금제가그래요

0개의 댓글