[λΈλ‘κ·Έ μ΄μ ]
2022.03.22
π 1008λ²

μμ² μ¬μΈ μ€ μμλλ° κ³μ νλ Έ........
μ€μν 건 μλμ€μ°¨κ° 10^-9 μ΄νμ΄λ©΄ μ λ΅μ΄λΌλ 문ꡬμλ€.
κ³μ floatλ‘ λλμμ λλ μ€λ΅μ΄λΌκ³ λμλ€.
μ¬κΈ°μ λμ¨ κ°λ μ΄ λ€μμ΄λ€.
β
π'λΆλ μμμ (floating point)'
: μμλ₯Ό νννλ λ°©λ² μ€ νλ.
μ»΄ν¨ν°μμ μμλ₯Ό νννλ €λ©΄ μ¬λ¬κ°μ§ λ°©λ²μ΄ μλλ°, λ©λͺ¨λ¦¬κ° μ νμ μ΄λ€ 보λ μ νν μμ κ°μ΄ ννλ 리 μλ€....
ex) 1/3μ κ³μ°νκ³ μ ν λ μλ£νμ΄ float(4byte) -> μ€μ°¨ λ²μκ° 10^-7 μ ν
μλ£νμ΄ double(8byte) -> μ€μ°¨ λ²μκ° 10^-15 μ ν
μλ£νμ΄ long double(16byte)- μ΄κ±΄ μλμ°λ λΉμ€λ₯Ό μ¬μ©νλ©΄ long doubleλ 8λ°μ΄νΈμ΄λ€. λ¨ μ°λΆν¬λ 16λ°μ΄νΈμ΄λ€.
β
μ¦, doubleλ‘ ν΄μΌ μ λ΅μ΄ λμλ€....γ γ
β
+ double μΆλ ₯ %f λλ %lf
#include <stdio.h>
int main() {
int A, B;
double div;
scanf("%d %d", &A, &B);
div = (double)A / (double)B;
printf("%.15lf\n", div);
return 0;
}
π 1009λ²
μ€μ€ κ·Έλλ 빨리 νΌ λ― γ γ

μ§μν¨μκ° λ€μ΄κ°μ μ²μμλ math.hλ₯Ό μΆκ°νμ¬ pow()ν¨μλ₯Ό μ¬μ©νλ€. νμ§λ§ κ°μ΄ λ무 컀μ§λ€ 보λ μ λλ‘ κ³μ°μ λͺ»νλ€.
λ°λΌμ μ΄μ§νΌ νμν λ°μ΄ν°λ μ§μν¨μ κ²°κ³Όμ 1μ μ리 μ μ΄λ―λ‘, κ·Έλ₯ 1μ μλ¦¬λ§ κ³μ°νλ forλ¬Έμ μΆκ°νλ€. μ μλνλ€ γ γ
#include <stdio.h>
int main() {
int T, a, b;
scanf("%d", &T);
for (int i = 0;i < T;i++) {
int com=1;
scanf("%d %d", &a,&b);
for (int j = 0;j < b;j++) {
com *= a;
com = com % 10;
}
if (com == 0)
printf("10\n");
else
printf("%d\n", com);
}
return 0;
}
β
π 1076λ²
λ§μλλ° λ무 μ°μ°νλ€.... λ¨Όκ° λ μ’μ λ°©λ²μ΄ μμ κ±° κ°μλ°...
λ¨Όμ enumμΌλ‘ λκ° ν΄λ³Όλ €κ³ νλ€κ° stringμ λ°μμ enum λ³μμ λΉκ΅ν μ μμ΄μ μ€ν¨νλ€.
κ·Έλμ μλμ κ°μ΄ μμ±νλλ°.... λλ½λ€.
#include <stdio.h>
#include <string.h>
#include <math.h>
int main() {
char a[10];
int val_a;
long long val=0;
for (int i = 0;i < 3;i++) {
scanf("%s", a);
if (!(strcmp(a, "black")))
val_a = 0;
else if (!(strcmp(a, "brown")))
val_a = 1;
else if (!(strcmp(a, "red")))
val_a = 2;
else if (!(strcmp(a, "orange")))
val_a = 3;
else if (!(strcmp(a, "yellow")))
val_a = 4;
else if (!(strcmp(a, "green")))
val_a = 5;
else if (!(strcmp(a, "blue")))
val_a = 6;
else if (!(strcmp(a, "violet")))
val_a = 7;
else if (!(strcmp(a, "grey")))
val_a = 8;
else if (!(strcmp(a, "white")))
val_a = 9;
switch (i) {
case 0:
val = 10 * val_a;
break;
case 1:
val += val_a;
break;
case 2:
val *= (int)pow(10, val_a);
break;
}
}
printf("%lld\n", val);
return 0;
}
μ°Έκ³ λ‘ κ²°κ³Όκ°μ΄ 컀μ long long μλ£νμ μ¬μ©ν΄μΌ μ λ΅μ²λ¦¬ λλ€.
μ½κ°μ κ²μμ ν΄λ³΄μλλ° c++ λ‘ μμ±νλ©΄ μ½λκ° κΉλνλ€. cμλ string μλ£νμ΄ μκΈ° λλ¬Έκ°λ€.
πc++μ 빨리 λ°°μμΌκ²λ€......γ γ γ
π 1010λ²
μ‘°ν©μ μ΄μ©ν λ¬Έμ μ΄λ€.
μ μμ μ¬μ©νμ¬ κ΅¬νν΄λ³΄μλ€.
λΆλͺ¨, λΆμλ₯Ό λ°λ‘ λ°λ‘ κ³μ°νμ¬ λλμμ§λ§, μ λ ₯μ΄ λ무 컀μ long long μλ£νμΌλ‘λ μλλ€.
β
πλ°.λΌ.μ μλκ° κ°μμ μ μ©νλ€.

μλ₯Ό ꡬννκΈ° μν΄ if (N > M / 2) N = M - N; μ μΆκ°νλ€.
λ©λͺ¨λ¦¬ λΆμ‘± νμμ΄ ν΄κ²°λμλ€~~!~!~!~
#include <stdio.h>
int main() {
int T, N, M;
scanf("%d", &T);
for (int i = 0;i < T;i++) {
long long bridge, tmp1 = 1, tmp2 = 1;
scanf("%d %d", &N, &M);
if (N == M)
bridge = 1;
else {
if (N > M / 2)
N = M - N;
int tmp3 = M - N;
for (M;M > tmp3;M--)
tmp1 *= M;
for (N;N > 0;N--)
tmp2 *= N;
bridge = tmp1 / tmp2;
}
printf("%d\n", bridge);
}
return 0;
}
'π§©boj' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[boj] λ°±μ€ 10699 (0) | 2025.02.20 |
---|---|
[boj] λ°±μ€λ¦΄λ μ΄ (0) | 2025.02.20 |
[boj] λ°±μ€λ¦΄λ μ΄ (0) | 2025.02.20 |
[boj] λ°±μ€λ¦΄λ μ΄ (0) | 2025.02.20 |
[boj] λ°±μ€λ¦΄λ μ΄ (0) | 2025.02.20 |