πŸ–€ Algorithm/CodeUp : Cμ–Έμ–΄ 기초 100제

[μ½”λ“œμ—… CodeUp] Cμ–Έμ–΄ 기초 100제 1047번 ~ 1052번 풀이

μ˜ˆμ§„-D 2021. 6. 19. 15:16

πŸ“ μ§€λ‚œ κΈ€

2021.04.29 - [πŸ“‚ ν”„λ‘œκ·Έλž˜λ°/C] - [μ½”λ“œμ—… CodeUp] Cμ–Έμ–΄ 기초 100제 1038번 ~ 1046번 풀이

 

[μ½”λ“œμ—… CodeUp] Cμ–Έμ–΄ 기초 100제 1038번 ~ 1046번 풀이

πŸ“ μ§€λ‚œ κΈ€ 2021.04.26 - [πŸ“‚ ν”„λ‘œκ·Έλž˜λ°/C] - [μ½”λ“œμ—… CodeUp] Cμ–Έμ–΄ 기초 100제 1028번 ~ 1037번 풀이 [μ½”λ“œμ—… CodeUp] Cμ–Έμ–΄ 기초 100제 1028번 ~ 1037번 풀이 πŸ“ μ§€λ‚œ κΈ€ 2021.03.23 - [πŸ“‚ ν”„λ‘œκ·Έλž˜λ°/C] - [..

hyj3463.tistory.com

 

 

μ•„λž˜ μ½”λ“œλ“€μ€ 제 κΉƒν—ˆλΈŒμ—μ„œλ„ ν™•μΈν•˜μ‹€ 수 μžˆμŠ΅λ‹ˆλ‹€. :-)

https://github.com/YejinHwang-D/Algorithm_CodeUp

 

GitHub - YejinHwang-D/Algorithm_CodeUp: Code-up basic 100 answer using C

Code-up basic 100 answer using C. Contribute to YejinHwang-D/Algorithm_CodeUp development by creating an account on GitHub.

github.com

 


 

codeup.kr/problemsetsol.php

 

λ¬Έμ œμ§‘

 

codeup.kr

1047λ²ˆλΆ€ν„° 1052λ²ˆκΉŒμ§€λŠ” λΉ„νŠΈμ‹œν”„νŠΈ&비ꡐ연산 μ˜ˆμ œμž…λ‹ˆλ‹€. 

특히 1047번, 1048λ²ˆμ—μ„œ λ“±μž₯ν•˜λŠ” λΉ„νŠΈμ‹œν”„νŠΈλŠ” <<, >> μ—°μ‚°μžλ₯Ό μ‚¬μš©ν•΄ 값을 2λ°°μ”© 증가할 λ•Œ μ‚¬μš©ν•©λ‹ˆλ‹€. 

1040λ²ˆλΆ€ν„°λŠ” 비ꡐ μ—°μ‚°μž μ‚¬μš©μ— λŒ€ν•œ μ˜ˆμ œμž…λ‹ˆλ‹€.

 

 

πŸ’‘ μ•„μ£Ό μ†Œμ†Œν•œ Tip

λ°˜λ³΅λ˜λŠ” μ½”λ“œ ν‘œν˜„μ€ μ½”λ”© μŠ€νƒ€μΌ 섀정을 μ΄μš©ν•˜λ©΄ μžλ™μœΌλ‘œ μž…λ ₯ν•΄μ€λ‹ˆλ‹€. 

 

 


 

 

# 1047번

좜λ ₯ μ„€λͺ…: 1개의 μ •μˆ˜λ₯Ό μž…λ ₯λ°›μ•„ 2λ°° κ³±ν•œ κ°’ 좜λ ₯

μ£Όμ˜μ‚¬ν•­: μ—°μ‚°μž

#include <stdio.h>

int main() {
    int num;
	scanf("%d", &num);
	printf("%d", num<<1);		#printf("%d", num*2); 도 κ°€λŠ₯
	return 0;
}

1047λ²ˆμ€ λΉ„νŠΈμ‹œν”„νŠΈλΌλŠ” μƒμ†Œν•œ μ—°μ‚°μžκ°€ λ“±μž₯ν•©λ‹ˆλ‹€. << λŠ” κ³±ν•˜κΈ°, >> λŠ” λ‚˜λˆ„κΈ° μ—°μ‚°μžλ‘œ μœ„ μ½”λ“œμ²˜λŸΌ << 1을 μ‚¬μš©ν•˜λ©΄ 2의 1승, 즉 2κ°€ κ³±ν•΄μ§‘λ‹ˆλ‹€.

μ£Όμ„μ²˜λŸΌ 기쑴에 μ΅μˆ™ν•˜λ˜ λ°©λ²•μœΌλ‘œ (λ³€μˆ˜)*2λ₯Ό 해도 λ˜μ§€λ§Œ, λΉ„νŠΈμ—°μ‚°μ„ μ‚¬μš©ν•˜λ©΄ 2의 μ§€μˆ˜μŠΉμœΌλ‘œ μ—°μ‚°ν•΄μ•Όν•œλ‹€λŠ” μ œμ•½μ΄ μžˆμ§€λ§Œ, 속도가 ꡉμž₯히 λΉ λ₯΄λ‹€λŠ” μž₯점도 μžˆμŠ΅λ‹ˆλ‹€.

 

 

# 1048번

좜λ ₯ μ„€λͺ…: 2개의 μ •μˆ˜λ₯Ό μ°¨λ‘€λ‘œ μž…λ ₯λ°›μ•„ 첫번째 값에 λ‘λ²ˆμ§Έ κ°’ μ§€μˆ˜μŠΉμ„ κ³±ν•œ κ°’ 좜λ ₯

μ£Όμ˜μ‚¬ν•­: μ—°μ‚°μž

#include <stdio.h>

int main() {
	int num1, num2;
	scanf("%d %d", &num1, &num2);
	printf("%d", num1<<num2);
	return 0;
}

λ³€μˆ˜ 2개λ₯Ό μ„ μ–Έν•΄ 각각 μž…λ ₯λ°›κ³ , 1047번과 λ§ˆμ°¬κ°€μ§€λ‘œ κ³±ν•˜κΈ° << μ—°μ‚°μžλ₯Ό μ‚¬μš©ν•˜λ©΄ λ©λ‹ˆλ‹€.

+ μΆ”κ°€λ‘œ Cλ‚˜ C++μ—μ„œ μ œκ³±μ„ κ΅¬ν•˜λŠ” ν•¨μˆ˜λŠ” powκ°€ μžˆμŠ΅λ‹ˆλ‹€. (μ‚¬μš© : include <math.h>) 인자의 첫번째 수λ₯Ό λ°‘, λ‘λ²ˆμ§Έ 수λ₯Ό μ§€μˆ˜λ‘œ μ—°μ‚°ν•΄μ€λ‹ˆλ‹€. μ£Όμ˜ν•  점은 μ‹œν”„νŠΈμ—°μ‚°μžλ₯Ό μ‚¬μš©ν•  땐 μ§€μˆ˜ 뢀뢄에 1을 μ μ—ˆλ‹€κ³  해도 2^1둜 2κ°€ κ³±ν•΄μ§€μ§€λ§Œ, powν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜λ©΄ κ°’ κ·ΈλŒ€λ‘œ μ§€μˆ˜κ°€ λ©λ‹ˆλ‹€.

 

 

# 1049번

좜λ ₯ μ„€λͺ…: 2개의 μ •μˆ˜λ₯Ό μž…λ ₯λ°›μ•„ 크기 비ꡐ (1)

μ£Όμ˜μ‚¬ν•­: λΉ„κ΅μ—°μ‚°μž

#include <stdio.h>

int main() {
	int a, b;
	scanf("%d %d", &a, &b);
	printf("%d", a>b);
	return 0;
}

비ꡐ/관계 μ—°μ‚°μžμ—λŠ” >, >=, <, <=, ==, != κ°€ μžˆμŠ΅λ‹ˆλ‹€. μ—¬κΈ°μ„œλŠ” aκ°€ b보닀 큰 경우만 1이고 λ‚˜λ¨Έμ§€λŠ” λͺ¨λ‘ 0μ΄λ―€λ‘œ a>bλ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. 

	if (a > b)
	    printf("1");
	else
	    printf("0");

ꡳ이 길게 μ“°λ©΄ 좜λ ₯ν•  λ•Œ if-elseλ₯Ό μ‚¬μš©ν•΄λ„ κ²°κ³ΌλŠ” κ°™μŠ΅λ‹ˆλ‹€. 

 

 

# 1050번

좜λ ₯ μ„€λͺ…: 2개의 μ •μˆ˜λ₯Ό μž…λ ₯λ°›μ•„ 크기 비ꡐ (2)

μ£Όμ˜μ‚¬ν•­: λΉ„κ΅μ—°μ‚°μž

#include <stdio.h>

int main() {
	int a, b;
	scanf("%d %d", &a, &b);
	printf("%d", a==b);
	return 0;
}

49번과 μœ μ‚¬ν•˜λ―€λ‘œ μ„€λͺ…은 μƒλž΅ν•©λ‹ˆλ‹€. 

	if (a == b)
	    printf("1");
	else if (a != b)
	    printf("0");

λ§ˆμ°¬κ°€μ§€λ‘œ if-else ifλ₯Ό μ‚¬μš©ν•΄ 길게 써봐도 κ²°κ³ΌλŠ” κ°™μŠ΅λ‹ˆλ‹€. (λ¬Έμ œμ—μ„œ 같은 경우, κ°™μ§€ μ•Šμ€ 경우만 μƒκ°ν–ˆκΈ° λ•Œλ¬Έμ— elseκ°€ μ•„λ‹Œ else if둜 쑰건을 κ±Έμ—ˆμŠ΅λ‹ˆλ‹€.)

 

 

# 1051번

좜λ ₯ μ„€λͺ…: 2개의 μ •μˆ˜λ₯Ό μž…λ ₯λ°›μ•„ 크기 비ꡐ (3)

μ£Όμ˜μ‚¬ν•­: λΉ„κ΅μ—°μ‚°μž

#include <stdio.h>

int main() {
	int a, b;
	scanf("%d %d", &a, &b);
	printf("%d", a<=b);
	return 0;
}

λ§ˆμ°¬κ°€μ§€λ‘œ μ„€λͺ…은 μƒλž΅ν•©λ‹ˆλ‹€. μ—¬κΈ°μ„œ 1049번과 같이 if-elseλ₯Ό 써도 κ²°κ³ΌλŠ” κ°™μŠ΅λ‹ˆλ‹€(μƒλž΅).

 

 

# 1052번

좜λ ₯ μ„€λͺ…: 2개의 μ •μˆ˜λ₯Ό μž…λ ₯λ°›μ•„ 크기 비ꡐ (4)

μ£Όμ˜μ‚¬ν•­: λΉ„κ΅μ—°μ‚°μž

#include <stdio.h>

int main() {
	int a, b;
	scanf("%d %d", &a, &b);
	printf("%d", a!=b);
	return 0;
}

'λ‹€λ₯΄λ‹€'λ₯Ό λ‚˜νƒ€λ‚΄λŠ” != λΉ„κ΅μ—°μ‚°μžλ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. ifλ¬Έ μƒλž΅.