[C] λ°±μ€ 1977λ² λ¬Έμ
κ°μ₯ μ²μμλ Mκ³Ό Nμ΄ 10000μ΄νμ΄λ―λ‘ forλ¬ΈμΌλ‘ 1λΆν° 100κΉμ§ λλ €μ λ²μμ ν΄λΉνλ©΄ λνλ λ°©μμΌλ‘ νλ €κ³ νμΌλ μμλ μκ°μ΄κ³Όλ‘ μ€ν¨νλ€!
λλ²μ§Έλ‘ μκ°ν λ°©λ²μ,
μμ μ κ³±μκ° μλ μμ μ κ³±κ·Όμ μμ ν μ μκ° μλν λ κ·Έκ±Έ λ€μ μ κ³±νλ©΄ λ€λ₯Έ κ°μ΄ λμ€μ§ μμκΉ..? νλλ° κ°μ κ°μ΄ λμμ μ€ν¨
μΈλ²μ§Έλ‘ μκ°ν λ°©λ²μ,
μ κ³±κ·Όμ 10μ κ³±νκ³ int λ³μμ μ μ₯ν λ€ λ€μ 10μ λλ λλ¨Έμ§ κ°μ νμΈν΄μ 0 μ΄λ©΄ μμ μ κ³±μλ‘ νλ¨νλ λ°©λ²μ΄λ€. λλ²μ§Έλ°©λ²κ³Ό λΉμ·ν λ Όλ¦¬λ‘ μμ μ κ³±μκ° μλ μμ μ κ³±κ·Όμ μ μκ° μλ μ€μμΈ μ μ μ΄μ©νλ€.
ex) 63μ μ κ³±κ·Ό = 7.9372539 μ 10μ κ³±νλ©΄ 79.XXXμ΄κ³ μ΄λ₯Ό int λ³μμ μ μ₯νλ©΄ 79 μ΄λ―λ‘ μ¬κΈ°μ 10μ λλ λλ¨Έμ§λ 0μ΄ μλ 9μ΄λ€.
64μ μ κ³±κ·ΌμΈ 8μ 10μ κ³±νλ©΄ 80μ΄κ³ μ¬κΈ°μ 10μ λλ λλ¨Έμ§λ 0μ΄λ―λ‘ μμ μ κ³±μλ‘ νλ¨μ νλ κ²μ΄λ€.
κ·Όλ° μ¬κΈ°μ λ¬Έμ μ μ int λ³μμ μ μ₯νλ κ³Όμ μμ μμμ μμ μ¬λ¦Όμ΄ λλκ±΄μ§ μμ μ κ³±μκ° μλ κ²½μ°μλ λλ¨Έμ§κ° 0μ΄ λμ€λ κ²½μ°κ° μκ²Όλ€. μ΄ μ΄μ λ λ°λ‘ 곡λΆλ₯Ό ν΄λ΄μΌν κ² κ°λ€.
λ¬Έμ μ μ 10 λμ 1000μ κ³±νκ³ 1000μ λλ λλ¨Έμ§λ₯Ό ꡬνλκ±Έλ‘ λ°κΎΈλκΉ ν΄κ²°λλ€! μ νλκ° λ λμμ Έμ κ·Έλ°λ―
#include <stdio.h>
#include <math.h>
int main()
{
int a,b,c = 0,sum=0;
int check;
scanf("%d",&a);
scanf("%d",&b);
for (int i = b; i >= a; i--)
{
check = (double) sqrt(i) * 1000;
if(check % 1000 == 0)
{
sum += i;
c = i;
}
}
if(sum == 0)
printf("-1");
else
printf("%d\n%d\n",sum,c);
return 0;
}