zoukankan      html  css  js  c++  java
  • Codeforces Round #479 (Div. 3) D. Divide by three, multiply by two

    题目地址:http://codeforces.com/contest/977/problem/D

    官方题解:

    题解:按数有多少3的因子排序,如果相同就按从小到大排序。

     提示:dfs and similar  //  math  //  sortings

     1 #include<cstdio>
     2 #include<cmath>
     3 #include<algorithm>
     4 #include<cstring>
     5 #include<string>
     6 #include<iostream>
     7 #include<map>
     8 #include<vector>
     9 #include<set>
    10 #include<queue>
    11 using namespace std;
    12 13 typedef long long ll;
    14 typedef unsigned long long ull;
    15 int deg3(ll x)
    16 {
    17     ll len = 0;
    18     while (x % 3 == 0 && x)
    19     {
    20         x /= 3;
    21         len++;
    22     }
    23     return len;
    24 }
    25 bool cmp(ll a, ll b)
    26 {
    27     if (deg3(a) != deg3(b)) return deg3(a)>deg3(b);
    28     else return a<b;
    29 }
    30 ll a[110];
    31 int main()
    32 {
    33     int n;
    34     scanf("%d", &n);
    35     for (int i = 0; i<n; i++) scanf("%lld", &a[i]);
    36     sort(a, a + n, cmp);
    37     for (int i = 0; i<n; i++) printf("%lld ", a[i], "
    "[i == n - 1]);
    38     return 0;
    39 }
  • 相关阅读:
    mac lsof使用查看端口
    mac 安装gevent报错
    vim命令学习
    linux批量关闭进程
    坐标点转换
    screen命令记录
    hashlib模块
    PyYAML和configparser模块讲解
    xml处理模块
    json、pickleshelve模块(超级好用~!)讲解
  • 原文地址:https://www.cnblogs.com/Tangent-1231/p/9011429.html
Copyright © 2011-2022 走看看