//#include <stdio.h>
//
//int a, b;
//int gcd(int a,int b)
//{
// int i,cd,j,k,d[100];
// for(i=1;i<=a;i++){
// if(a%i==0&&b%i==0){
// cd=i;
// }
// }
// return cd;
//}
//int main()
//{
// scanf("%d%d", &a, &b);
// printf("%d\n", gcd(a, b));
//}
//#include <stdio.h>
//
//int n, k, d[1010];
//int findi(int k)
//{
// int i;
// for(i=1;i<=n;i++){
// if(k==d[i]){
// return i;
// }
// }
// return -1;
//}
//int main()
//{
// scanf("%d", &n);
//
// for(int i=1; i<=n; i++)
// scanf("%d", &d[i]);
//
// scanf("%d", &k);
//
// printf("%d\n", findi(k));
//}
//#include <stdio.h>
//
//int n, k, d[1010];
//int upper_bound(int k)
//{
// int i;
// for(i=1;i<=n;i++){
// if(d[i]>k){
// return i;
// }
// }
// return n+1;
//}
//int main()
//{
// scanf("%d", &n);
//
// for(int i=1; i<=n; i++)
// scanf("%d", &d[i]);
//
// scanf("%d", &k);
//
// printf("%d\n", upper_bound(k));
//}
//#include <stdio.h>
//
//long long int n;
//long long int f(long long int n)
//{
// long long int i,r=0,sum,d=10;
// for(i=1;;i++){
// r=r*10;
// r=r+(n%d);
// n=n/10;
// if(n==0){
// break;
// }
// }
// return r;
// }
//int main()
//{
// scanf("%lld", &n);
// printf("%lld\n", f(n));
//}
//#include <stdio.h>
//
//int a, n;
//long long int pow (int a,int n)
//{
// long long int i,p=1;
// if(a==1){
// return 1;
// }
// for(i=1;i<=n;i++){
// p=p*a;
// }
// return p;
//}
//int main()
//{
// scanf("%d%d", &a, &n);
// printf("%lld\n", pow(a, n));
//}
/*
#include <stdio.h>
int n;
long long int d[110];
cc
int main()
{
scanf("%d", &n);
for(int i=1; i<=n; i++)
scanf("%lld", &d[i]);
printf("%lld", f());
return 0;
}
재귀함수
재 : 다시
귀 : 오는거
recursive fucntion
re : 다시
curve : 돌아오는거
정의
1. 함수 내에서 자신을 다시 호출하는 함수 ( 분신술)
특징
1. 무한으로 실행되면 안되니까 !! 종료조건이 있어야한다!!
2. 함수 내에서 자신을 다시 호출
장점
1. 코드가 간단
f(n) : n 부터 1까지 출력
n출력 -> n-1출력 -> ... 1출력
n출력 -> n-1 부터 1까지출력
n출력 -> f(n-1)
#include <stdio.h>
void f(int n)
{
if(n==0) return ; //종료조건
//if(n==1) return ;
f(n-1); // 재귀호출
printf("%d ",n);
}
int main()
{
f(6);
return 0;
}
f(a,b) : a부터 b까지 출력
*/
/*
#include <stdio.h>
void f(int a,int b)
{
if(a>b){
return ;
}
if(a%2==1){
printf("%d ",a);
}
f(a+1,b);
}
int main()
{
int a,b;
scanf("%d %d",&a,&b);
f(a,b);
return 0;
}
#include <stdio.h>
void f(int n)
{
printf("%d\n",n);
if(n==1){
return ;
}
if(n%2==1){
n=n*3+1;
}
else{
n=n/2;
}
f(n);
}
int main()
{
int n;
scanf("%d",&n);
f(n);
return 0;
}
*/