#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int n;
scanf("%d",&n);
int i=0;
if(n==1)
{
printf("1");//若只有一位对象,则编号为1,且只能选择这位对象。
}
else
{
while(n>1)
{
n=n/2;
i++;
}//利用循环找到n最多除以n的次数i。
printf("%d",(int)pow(2,i));//输出2的i次方。
}
}
阿泽同学不仅一表人才,而且才高八斗,乐于助人,道德高尚,自然追求者无数,阿泽有一个爱好,就是不喜欢单数,他把所有追求者从1开始依次编号,把单数编号的人排除掉,剩下的人再重新从1开始编号,然后还是把单数编号的去掉,如此反复,直到剩下最后一位,就是阿泽的知心朋友。 如果有5位追求者,编号分别是1,2,3,4,5,排除掉单数,剩下2,4,再重新编号1,2,去掉单数,剩下的2号就就最初时的4号
/*转换题目意思:
找到比n小的最大sum,sum=2的x次方。*/
输入格式:
输入一个整数,表示阿泽有n位追求者(n>0),n是int范围的正整数。
输出格式:
输出一个整数,表示阿泽的知心朋友最初时的编号。
样例">输入样例:
5
输出样例:
4