数组变换
来源:互联网 发布:登陆火星知乎 编辑:程序博客网 时间:2024/05/21 22:00
牛牛有一个数组,里面的数可能不相等,现在他想把数组变为:所有的数都相等。问是否可行。
牛牛可以进行的操作是:将数组中的任意一个数改为这个数的两倍。
这个操作的使用次数不限,也可以不使用,并且可以对同一个位置使用多次。
输入描述:
输入一个正整数N (N <= 50)
接下来一行输入N个正整数,每个数均小于等于1e9.
输出描述:
假如经过若干次操作可以使得N个数都相等,那么输出”YES”, 否则输出”NO”
输入例子:
2
1 2
输出例子:
YES
代码(90%,可能是Java用大数类超时了):
/* * 对于每个数一直除2,直到数的最后一位为1。 */import java.util.Scanner;public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner in = new Scanner(System.in); int N = in.nextInt(); int[] num = new int[N]; for (int i = 0 ; i < N ; i++){ num[i] = in.nextInt(); } for( int i = 0 ; i < N ; i++){ while((num[i] & 1) == 0){ num[i] >>= 1; } } StringBuffer result = new StringBuffer("YES"); for ( int i = 1 ; i < N ; i++){ if ( num[i] != num[0]){ int len = result.length(); result.delete(0,len); result.append("NO"); } } System.out.print(result); in.close(); }}
阅读全文
0 0
- 数组变换
- 数组变换
- 数组变换
- 数组变换
- 数组的行列变换
- 数组变换图片
- json数组的变换
- [编程题] 数组变换
- 数组序列变换1
- java数组变换(一)
- 数组变换(编程题)
- 变换数组使得奇偶数分开
- BZOJ 1692 队列变换 贪心+后缀数组
- Happy Number 数组变换循环判断
- python图像数组操作与灰度变换
- 浙工大15新生赛 变换的数组
- 数组变换-Java-牛客模拟三
- ndarray数组的创建与变换
- jQuery鼠标悬停展示详情
- Codeforces 141C【构造】
- 史上最简单的手机app教程 基于Corona SDK(3)
- mybatis和hibernate的配置----个人笔记
- UVA 116记忆化搜索
- 数组变换
- python工具_正则表达式
- Arraylist的初步使用
- markdown中实现首行缩进的两种方法
- 去除集合中自定义对象的重复值(对象的成员变量值都相同)
- 微信开发本地服务器调试实现
- 排序子序列
- Flask-Mail SMTP服务器的配置
- 【2012年第三届蓝桥杯C/C++程序设计本科B组决赛 星期几(结果填空) 】