关键词: 谷歌分析 “Google Analytics” “Measurement Protocol” 服务端使用谷歌分析
总结一下这次折腾
开始看到了imququ网站的beacon.html,通过这种方式来统计访问流量,感到挺好玩的,然后就查了一些东西,发现统计网站统计客户访问原理也差不多是这样,通过加载一个js文件来搜集浏览者信息,然后发送到自家服务器。
这样有两个好处:

  • 一是加快网页加载,谷歌统计经常还是加载很慢,并且发送collect信息时也需要很长时间
  • 二是可以防止uBlock Origin等拦截,现在浏览网页基本都会用这东西了。
    其实现原理为客户端统计信息=>网站服务器=>谷歌服务器。将用户客户端信息发送到自己的服务器也可以在服务器上自行处理统计,之所以能中转是因为谷歌服务器有提供api,可以通过参数uip来传递IP地址,其他的没有提供类似方法的就不能用了。
Read more »

Given an integer, write a function to determine if it is a power of three.
Follow up:
Could you do it without using any loop / recursion?

解题思路:

  1. 用数学公式$\frac{log_{10}n}{log_{10}3}$为整数
  2. 更多参考:http://blog.csdn.net/ebowtang/article/details/50485622

    code

    1
    2
    3
    4
    5
    6
    7
    class Solution {
    public:
    bool isPowerOfThree(int n) {
    double dtmp = log10(n) / log10(3);
    return int(dtmp) - dtmp == 0;
    }
    };

Given an integer (signed 32 bits), write a function to check whether it is a power of 4.
Example:
Given num = 16, return true. Given num = 5, return false.
Follow up: Could you solve it without loops/recursion?

方法一

  • 循环
1
2
3
4
5
6
7
bool isPowerOfFour(int num) {
if (num <= 0) return false;
while ((num % 4) == 0) {
num /= 4;
}
return num == 1;
}
1
2
3
4
5
6
7
bool isPowerOfFour(int num) {
if (num <= 0) return false;
while ((num & 0x3) == 0) {
num /= 4;
}
return num == 1;
}
Read more »

Given an integer, write a function to determine if it is a power of two.

解题思路

1,最高位为1,其余都为0.位运算判断方法为num&(num-1)
2.循环

code

1
2
3
4
5
6
7
bool isPowerOfTwo(int n) {
if(n <= 0) return false;
while(n%2 == 0) {
n /= 2;
}
return 1 == n;
}
1
2
3
4
5
6
class Solution {
public:
bool isPowerOfTwo(int n) {
return n > 0 && 0 == (n & (n-1));
}
};

这次建立vpn服务器遇到的问题太多了,现在把基本流程和遇到问题总结一下,先说下遇到的问题

  • vpn连上但上不了网
  • vpn电脑可以连上,但手机却连不上(iptables问题)
  • 重启vpn连不上
  • crontab通过curl发送post上网登陆命令总是不成功
  • 限制ssh登陆ip
    以上问题都总结到以下流程中

本文环境
ubuntu 15.10 64位

Read more »

problem

Total Accepted: 65019 Total Submissions: 292477 Difficulty: Easy

The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility)

1
2
3
P   A   H   N
A P L S I I G
Y I R

And then read line by line: "PAHNAPLSIIGYIR"
Write the code that will take a string and make this conversion given a number of rows:

1
string convert(string text, int nRows);

convert("PAYPALISHIRING", 3) should return "PAHNAPLSIIGYIR".
Subscribe to see which companies asked this question

Read more »

config.yml修改

  • menu增加Resources: /userful-resources
  • widgets更改为[category, tag, links]
  • 增加sitemap
    1
    2
    sitemap:
    path: sitemap.xml
  • 更改主题颜色theme: ‘#3d85c6’
  • 主页不展开expand: false
  • 关闭文章边栏close_aside: true
  • creative_commons: by-nc-sa
    Read more »
0%