WA 到死原因总结

  1. 警惕使用 n = -n; 进行数值正负转换

数值在内存中是以补码的形式进行存储的,因此 int 的数据范围为 [-2147483648, 2147483647],左右边界不对称。

当题目中声明所有数据均在 int 范围内时,应当警惕使用 n = -n;:如果值恰好为下界 -2147483648,则运算后结果仍为 -2147483648

  1. 警惕对于负数进行取模操作

不同语言中对于除法的实现算法不同,Java 和 C/C++ 中使用 truncate 除法(截断小数部分),Python 中使用 floor 除法(向下取整),因此负数取模的结果也不相同。

为了保证一致性,建议使用 (n + m) % m 的方式进行取模。

p.s. Ceiling 是向上取整。

macOS Mojave on VMware 调节分辨率

问题

基于 VMware Workstation 15 Pro 安装的 macOS Mojave 显示分辨率始终为 1024 x 768,安装 VMware Tools 与 SwitchResX 均未解决问题。

解决方案

打开 Terminal,执行 /Library/Application\ Support/VMware\ Tools/vmware-resolutionSet [width] [height],最大支持 8192 x 8192

由于虚拟机黑苹果最高只支持 128MB 显存,请不要将分辨率调过高,以免卡顿、花屏。

使用 GitLab 进行开发

开始工作

  1. Git – Downloads 下载最新版本的 Git 客户端。

  2. 运行 Git Bash,执行 ssh-keygen -t rsa -C “[your_email]@domain.com” 创建密钥对,得到 id_rsa.pub 公钥文件与 id_rsa 私钥文件。(务必妥善保管

  3. 参考 私人 GitLab 使用方法 中的 “SSH 配置” 章节,将公钥内容添加至自己的 GitLab 账号。

  4. 访问原始项目,点击中央的 fork 按钮,克隆一个分支至自己的账号。

  5. 访问自己刚刚 fork 出的分支,复制页面中间格式为 [email protected]:[username]/[project_name].git 的字符串。

  6. 在本地计算机上找到你想存放本项目的目录,例如 D:\Programs\,在 Git Bash 中执行 cd [绝对路径] 的方式跳转至该目录,例如 cd D:/Programs (注意前后斜杠的变化)。Windows 用户也可以直接打开该文件夹,右键点击空白区域,点击 Git Bash Here,在该文件夹中打开 Git Bash。

  7. 配置 Git 用户名和邮箱

    1
    2
    $ git config –global user.name "username"
    $ git config –global user.email "[email protected]"
  8. 执行 git clone [刚刚复制的字符串],将项目克隆到本地。

  9. 访问本地仓库,执行 git branch -a 浏览分支列表。

  10. 执行 git remote -v 查看 origin 是否为自己的远程仓库

  11. 执行 git remote add upstream [原始项目的 git 地址] 添加原始项目为同步源。

  12. 执行 git remote -v 查看 upstream 是否为原始项目。

  13. 执行 git fetch upstream 同步仓库。

  14. 执行 git checkout master 切换到 master 分支。

  15. 执行 git merge upstream/master 将原始项目的最新更改同步至本地。

  16. 执行 git push origin master 将本地仓库同步至自己的远程仓库。

  17. 执行 git checkout dev 切换到开发分支。

  18. 使用 Eclipse 打开项目,开始开发工作。

  19. 结束工作,执行 git status 查看修改过的文件。

  20. 执行 git diff 或者 git diff [filename] 比对文件改动,做最后检查。

  21. 执行 git commit -m “[注释]” 提交修改到 暂存区

  22. 执行 git push origin dev 将本地的开发分支提交至自己的远程仓库。

  23. 完成一个阶段性任务(程序功能)后,在 GitLab 页面上发起 Pull Request,项目主管将进行 Code Review 并提出修改建议,通过后将合并至主仓库。

注意事项

  1. 请在每天开始工作前将远程仓库的 master 分支同步至本地(在本地的 master 分支中使用 git fetch upstream 然后 merge)。
  2. 请基于最新的 dev 分支进行开发。(同步方法见上方)

开发帮助

QuickSort Dijkstra 3-Way Partitioning

思想

原始的 2-Way 快排在遇到大量重复数据时会退化为 O(n^2),为了解决这个问题,3-Way 快排被提出了。通过将区间分割为“小于”、“等于”和“大于”(基准数)三个部分,获得了趋近 O(nlogn) 的复杂度。不同于 2-Way 快排的是,我们在此选取一个基准数的值,而非一个基准元素。

(小声逼逼:当然为了方便也可以直接改进 2-Way 快排,在每一次基准数归位后遍历全区间元素,将等于基准数的元素交换到基准数旁边,也能获得等价的三个区间。当然,效率相对于 3-Way 快排有所下降,代码实现的复杂度也上升了。)

使用 i 下标表示“小于”区间的上界;使用 q 下标表示“等于”区间的上界;使用 j 下标表示“大于”区间的下界。

  1. 选取一个元素的值作为基准数值
  2. 判断 arr[q]pivot 的关系: 如果小于 pivot,交换 arr[i]arr[q]q 自增,i 自增 如果大于 pivot,交换 arr[j]arr[q]q ** 不变 **,j 自减 如果等于 pivotq 自增
  3. 重复步骤 2,直至 qj 相遇。

实现

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
public static void swap(int arr[], int a, int b)
{
/**
* Due to Java doesn't have reference, we can use XOR to swap the values
*/
if (a != b)
{
arr[a] ^= arr[b];//a = a^b
arr[b] ^= arr[a];//b = b^a^b = a
arr[a] ^= arr[b];//a = a^b^a = b
}
}
public static void quickSort(int f[], int lo, int hi)
{
if (lo >= hi)
return;

int pivot = f[(int)Math.random() % (hi - lo + 1) + lo];//randomize pivot

/**
* i "less" upper bound
* j "more" lower bound
* q "equal" upper bound
*
* ##less## ->i ##equal## ->q ##unknown## j<- ##more##
*/

int i = lo, j = hi, q = lo;

//partition
while (q <= j)
{
if (f[q] < pivot)
swap(f, q, i++);
else if (f[q] > pivot)
swap(f, q--, j--);//the exchanged value need to be check, so we q--
++q;
}
//recursion
quickSort(f, lo, i);//left
quickSort(f, j+1, hi);//right
}

自建 vlmcsd KMS 服务器激活 Windows 及 Office 套件

服务端操作

  1. 找一台吃灰小鸡(本地虚拟机也行)
  2. https://github.com/Wind4/vlmcsd/releases 下载 latest release
  3. tar -xzvf binaries.tar.gz 解压
  4. 运行

客户端操作

激活 Windows

各 KMS 激活密钥见 KMS 客户端安装密钥 | Microsoft Docs

  1. 以 Windows 管理员权限运行命令提示符
  2. 指定 kms 批量激活服务器 slmgr /skms [服务器地址]
  3. 执行激活操作 slmgr /ato
  4. 查看有效期 slmgr /xpr

注意:

1. 仅 VOL 批量许可版本的 Windows 支持 KMS 激活

2. KMS 激活有效期为 180 天(半年),到期系统会自动向 KMS 服务器更新状态。

3. 不可激活旗舰版 Windows 7

4. 手动安装密钥 slmgr /ipk xxxxx-xxxxx-xxxxx-xxxxx

5. Windows 下载见 MSDN 我告诉你

激活 Office

  1. 以 Windows 管理员权限运行命令提示符,进入到 Office 安装目录
  2. cscript ospp.vbs /sethst:[服务器地址]
  3. cscript ospp.vbs /act
  4. cscript ospp.vbs /dstatus

注意:

1. 仅 VOL 批量许可版本的 Office 支持 KMS 激活https://otp.landian.la/en-us/

2. Office 下载见 Office Tool Plus

快速排序简易入门

快速排序

快速排序(Quick Sort)因其 $O(NlogN)$ 的复杂度成为最常见的算法之一,甚至被纳入了 C++ 的标准库作为 std::sort 的一部分与插入排序糅合在一起以实现更优的时间复杂度。

在学习快速排序算法之前,让我们首先回顾最经典的排序算法——冒泡排序:经过 $(N-1)!$ 次比较,以 $O(N!)$ 的复杂度完成排序。由于冒泡排序每次只比对相邻的两个元素,所以排序效率相对比较低。

快速排序的优势在于,应用了分治的思想(有点像二分),通过多次迭代将元素依次归位,最终完成排序。单元操作如下:

  1. 最左端 选取端元素作为基准数
  2. 使用下标 i 从 最右端 开始寻找小于基准数的元素
  3. 使用下标 j 从 最左端 开始寻找大于基准数的元素
  4. 交换满足条件后的 i, j 下标所对应的元素,然后重复过程 2, 3 直至两下标相遇
  5. 将两下标所处元素与基准数交换

经过以上过程后,基准数左侧的元素均小于等于基准数,基准数右侧的元素均大于等于基准数。接着通过迭代的方式,将此时基准数左端区域与右端区域分别进行下一轮排序操作。当区间内只剩下一个元素时,结束当前过程。

注意:

一、快速排序中扫描时 必须从基准数的对面开始

原因:允许交换的前提:

1. 有 arr[r] < arr[L];

2. 有 arr[l] > arr[L]。

如果从左边开始,则在 l 与 r 相遇时可能只满足了 2 但未满足 1,此时基准数 arr[L] 与 arr[l](arr[r])发生交换,导致一个大于基准数的值被放在了最左。

二、基准数归位后就固定了,接下来分治排列 [L, l – 1] 和 [l+1, R] 即可。(此时 r == l)

改进

对于原始的快速排序,由于每次都从固定的一端选取基准数,当遇到有序序列时,可能会导致基准数归位后其余元素都在基准数的某一侧,而另一侧没有元素的情况,最终导致排序性能退化。为了避免这种情况出现,我们需要引入一个随机化操作来打乱有序序列:在当前区间内随机选取一个元素与基准数交换,然后以其作为新的基准数。示例代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#define INF
#define offline
#include "bits/stdc++.h"
using namespace std;

// int arr[] = {6, 1, 2, 7, 9, 3, 4, 5, 10, 8};
int arr[100010];
int n;
int t;

inline void Swap(int *a, int *b)
{
t = *a;
*a = *b;
*b = t;
}

inline int readint()
{
char c;
bool neg = false;
while((c = getchar()) &lt; '0' || c &gt; '9')
neg = c == '-';//等价于 neg = (c == '-'),因为 == 的优先级更高
int a = c - '0';
while((c = getchar()) &gt;= '0' &amp;&amp; c &lt;= '9')
a = a * 10 + c - '0';
return neg ? -a : a;
}

inline void Out(int n)
{
if (n &lt; 0)
putchar('-'), n = -n;
if (n &gt;= 10)
Out(n / 10);
putchar(n % 10 + '0');
}

inline void quicksort(int L, int R)
{
int l = L;
int r = R;

Swap(&amp;arr[L + ((int)rand() % (R - L))], &amp;arr[L]);
while (l &lt; r)
{
if (arr[r] &lt; arr[L])
{
while (l &lt; r)
{
if (arr[l] &gt; arr[L])
{
Swap(&amp;arr[l], &amp;arr[r]);
break;
}
else
l++;
}
}
r--;
}
Swap(&amp;arr[L], &amp;arr[l]);
if (L &lt; l - 1)
quicksort(L, l - 1);
if (R &gt; r + 1)
quicksort(r + 1, R);
}

int main()
{
//std::ios_base::sync_with_stdio(false);
//std::cin.tie(0);
//srand((unsigned int)(time(NULL)));
// n = 10;
scanf("%d", &amp;n);
for (int i = 0; i &lt; n; ++i)
arr[i] = readint();

quicksort(0, n - 1);

for (int i = 0; i &lt; n - 1; ++i)
{
Out(arr[i]);
putchar(' ');
}
Out(arr[n-1]);
putchar('\n');

return 0;
}

IVHQ 国际志愿者 | 巴厘岛保护海龟项目全纪录(三):融入

Day 1 Mon 文化学习与印尼语

![早晨](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_070727-1024x576.jpg)

早晨

一大早便被鸡鸣声唤醒,晨光与虫鸣从窗户涌进来。我所在的宿舍总共居住了四个男生,除一人来自美国以外,剩下三人都是同行校友。

![宿舍内](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_072702-1024x576.jpg)

宿舍内

每个床旁边有两个插座,一人一个。考虑到白天在营地时间较少,建议志愿者们除了必备的转接插头以外还要携带一个插线板以给手机、移动电源等电子产品同时供电。

![餐厅](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_115144-1024x576.jpg)

餐厅

来自不同国家的志愿者们陆陆续续地起床了,聚集在餐厅里享用早餐。

就我们所在的营地情况来看,志愿者分布有以下特征:

1. 女性志愿者人数远多于男性志愿者,比例超过 6:1。

2. 志愿者年龄分布集中于 20~30 岁之间。

3. 来自欧美国家的志愿者人数巨多,中国其次。

4. 素食主义者占有一定比例。

![营地内的庭院](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_112030-1024x576.jpg)

营地内的庭院

庭院里架空的树屋是提供给志愿者的吸烟室,时常能看到志愿者在院子里吞云驾雾。最右边的小屋是 GreenLion Cafe,白天营业时向志愿者们销售零食、饮料。

早餐品种还算丰富,有咖啡、香蕉、土司、炒蛋、木瓜以及南瓜饼。

![早餐](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_074046-1024x576.jpg)

早餐

上午的活动为巴厘岛文化介绍,coordinator 讲述了当地的文化禁忌以及 GreenLion 营地的志愿者规章。午餐后,大家简单休整了一会,便坐车前往乌布开展下午的活动。

![午餐](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_112909.jpg)

午餐

![乌布皇宫](https://iecho.cc/wp-content/uploads/2018/08/photo_2018-08-17_15-23-00-1024x768.jpg)

乌布皇宫

抵达乌布后,我们步行游览了乌布皇宫、乌布市场以及圣猴森林公园。

![乌布街景](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_133634.jpg)

乌布街景

乌布皇宫不大,游览过程几分钟边草草结束。两旁的雕塑与墙壁的蚀刻很是精美,这种石饰在巴厘岛各处都能够见到。

![乌布市场](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_144103.jpg)

乌布市场

乌布市场与国内的景区摊点别无两样,卖一些当地的木雕、廉价食品、香薰、手工箱包等。需要注意的是,当地景区和小商店商品的价格均为虚标,建议先砍价至原价的三分之一,然后与商贩慢慢谈价。

![街边的民宿](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_135055.jpg)

街边的民宿

在圣猴森林公园附近,随处可瞧见猴子在房顶戏耍。

![圣猴森林公园附近](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_151735-1024x576.jpg)

圣猴森林公园附近

![公园内的石雕](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_153015-1024x576.jpg)

公园内的石雕

![公园内的榕树](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_154349.jpg)

公园内的榕树

![公园一景](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_160049.jpg)

公园一景

![吃东西的猴](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_153743-1024x576.jpg)

吃东西的猴

晚上组织观赏了印度教舞蹈节目,众人围坐在篝火外,地面上坐着一群赤裸上身的男子,耳朵上佩戴有花,口中有节奏地喊着jiajiajiajia,十分魔性。

![舞蹈](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_191336.jpg)

舞蹈

![舞蹈](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180723_192225-1024x576.jpg)

舞蹈

第一天的活动就此结束了,回营地路上让司机载我们去了顺路的 Mini Market(当地的便利店,类似的还有 Coco Market),采购了一些零食和伴手礼。

Day 2 Tue 印尼语学习与绘画

今天的活动为印尼语学习和 painting class。

![印尼语学习](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180724_093615-1024x576.jpg)

印尼语学习

![印尼语学习](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180724_103449-1024x576.jpg)

印尼语学习

掌握了一些词汇后,coordinator 便组织了类似击鼓传花的游戏,被抽中人需要用印尼语说出指定的数字,答对后可以获得一块橡皮糖。

餐厅一侧的白板上写有午餐的菜单,炒粉丝、煎蛋、土司、菠萝以及蛇皮果。

![午餐菜单](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180724_105442.jpg)

午餐菜单

午餐后,我们乘车来到了几公里外的染坊渲染昨日的半成品。令人惊喜的是,我们的布已经被工作人员用金色燃料重新勾勒了花边,未经染色的形象就已跃然布上。

![染坊](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180724_133615.jpg)

染坊

浸湿后的布仍然会让一点颜料渗透过花边,有些志愿者会选择为其染上背景色来盖过渗透出的颜料。

![染布](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180724_142829.jpg)

染布

我的作品是一丛莲,透过荷花的花瓣,莲蓬露出一点点。由于染料还未风干,所以布面看上去颜色较深。

![莲](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180724_141749-1024x576.jpg)

结束染布后,我们先让司机载着去了附近的 Mini Market 采购了一些伴手礼和冰淇淋,然后去了“在当地司机中口碑不错”的一家餐厅。餐厅环境不错,坐落在田间,有着一个很大的后院和停车场。在这里,我们品尝了巴厘岛最负盛名的脏脏鸭以及当地特色串烤肉。这里的巴厘岛风味与国内中餐厅当然无法相比,不过也算是可以接受。

![脏脏鸭](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180724_185116-1024x576.jpg)

脏脏鸭

烤制后的鸭肉肥而酥,旁边还有几块虾片点缀。在巴厘岛,虾片是十分常见的配菜。

![烤肉](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180724_192116-1024x576.jpg)

烤肉

烤肉下方是些许炭火。

Day 3 Wed 印尼语学习与项目了解

早餐有香肠、法棍、土司、煎蛋、香蕉、木瓜和牛奶。速溶咖啡是全天供应的,在餐厅自取。

![早餐](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180725_081605.jpg)

早餐

上午的活动仍然是学习印尼语,不少志愿者翘了课程而是去泳池边晒日光浴,只剩下十几个志愿者在坚守(一半以上是国人)。

![学习印尼语](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180725_095713-1024x576.jpg)

学习印尼语

下午是关于海龟保护项目的介绍,以及项目所在地 Nusa Penida 岛的一些基本情况。

晚餐去了位于乌布中心的 Pundi Pundi 餐厅,品尝了布朗尼甜点和椰汁鲜鸡汤。

![椰汁鲜鸡汤](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180725_180938-1024x576.jpg)

椰汁鲜鸡汤

![布朗尼](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180725_183453-1024x576.jpg)

布朗尼

![Pundi Pundi](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180725_185315-1024x576.jpg)

Pundi Pundi

Day 4 Thu 印尼烹饪学习与欢送晚会

上午唯一的活动是学习印尼本地菜肴的制作。

早餐过后,众人盘坐在另一间堂屋的长桌旁,每人一套刀具切蔬菜与佐料,以及将当地的一种有点酸味的豆制品切块。

注意:豆制品在温度较高的环境下极易变质,尽量不要使用这个豆制品。

![烹饪](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180726_094935-1024x576.jpg)

烹饪

![烹饪](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180726_094938-1024x576.jpg)

烹饪

![午餐](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180726_112522-1024x576.jpg)

午餐

![午餐](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180726_112525-1024x576.jpg)

午餐

下午,在 coordinator 的带领下游览了周边的村庄和梯田。

![农田](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180725_154346-1024x576.jpg)

农田

同行的两只小狗在田里追逐鸭群取乐。

![鸭群](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180726_134849-1024x576.jpg)

鸭群

![神庙](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180726_142311.jpg)

神庙

神庙坐落在崖的高处,需要攀登一个陡峭的石梯才能抵达顶部。一旁还有一注山泉水。

![合影](https://iecho.cc/wp-content/uploads/2018/08/photo_2018-08-17_15-23-00-2-1024x768.jpg)

合影

嗯…当地人为我们拍摄的照片总是失焦,建议自备自拍杆。

![小溪](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180726_144444-1024x576.jpg)

小溪

艰难跋涉十余分钟,终于到达山脚的小溪。一根断裂的横木倒在岸边,树枝倚在水里。一些提前换好泳衣的志愿者直接跳入了小溪里游泳,其他人则在岸边合影。

![傍晚](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180726_171616-1024x768.jpg)

傍晚

![傍晚](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180726_171652-1024x768.jpg)

傍晚

傍晚的 GreenLion 营地与稻田。

![party](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180726_174931-1024x576.jpg)

party

![party](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180726_180508-1024x576.jpg)

party

晚间是 GreenLion 营地的每周 Party,共同欢送第二天就要结束项目的志愿者们。食物有冰牛油果青柠茶、米饭、炒面、黄焖鸡肉、胡萝卜和由豆制品制作的烤串。晚餐过半时,coordinator 宣读了即将结束旅程的志愿者名单,他们依次起身,在大家的掌声与欢呼中抒发了自己在这段志愿服务经历中的感慨。

Day 5 Fri 贡品制作与圣泉寺

祈祷是印尼人生活的重要组成部分,他们祈祷一切能为之感谢的事物。人们用椰树叶与各色鲜花制作出一个个精致的小盒子,这便是被称作为“Banten”的贡品。今天的活动之一便是亲手制作一个“Banten”。

将裁切好的椰树叶盘成方形,用细茎穿刺固定;取两片茎垫在底部,也固定好,然后依次摆上各色的花瓣,一份“Bentan”便制作完成了。

![圣泉寺内的水池](https://iecho.cc/wp-content/uploads/2018/08/photo_2018-08-18_20-19-02-2-1024x576.jpg)

圣泉寺内的水池

收集好制作的“Banten”,一行人乘车前往巴厘岛最著名的庙宇之一:Tirta Empul 圣泉寺。传说这里是由神所创造的泉水,在圣水里洗礼可以获得神灵的庇护、祛除疾病,由此吸引了巴厘岛各地的印度教信徒。除了他们之外,世界各地的游客也为一睹圣泉的景色而来到这里,一齐穿上 Sarong 浸泡在泉水中,感受着宗教文化的魅力。

![圣泉寺里,信徒坐在地面上祈祷](https://iecho.cc/wp-content/uploads/2018/08/photo_2018-08-18_20-19-02-1024x768.jpg)

圣泉寺里,信徒坐在地面上祈祷

寺庙内建筑的装饰十分精美,宗教元素的蚀刻自上而下遍布木质的支柱。

![圣泉寺内建筑的屋顶](https://iecho.cc/wp-content/uploads/2018/08/photo_2018-08-18_20-19-01-1024x768.jpg)

圣泉寺内建筑的屋顶

由于回程车辆安排的缘故,我们八人被拆散了,最终错过了原定于周五下午前往 Bali Swing 巴厘岛网红大秋千的行程,只得返回营地集合后再外出就餐。

我们首先乘车去了位于巴厘岛南部库塔的 DPS T 广场 免税店,采购了一些伴手礼。Java 爪哇岛是印度尼西亚的岛屿之一,出于对名称的好奇,我便购买了几包“Java Tea”和“Java Coffee”。就在 T 广场的东侧约一公里处,还有家乐福和 Logo 神似步步高的 Hypermart。免税店中食品、香薰等非奢侈品物品的价格较周边超市及商场贵几倍以上,机场内更甚,因此建议在免税店只购买奢侈品,对于平价商品或伴手礼则前往旁边的家乐福或 Hypermart 选购。

![包装十分精美的 Java Tea](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180727_175428.jpg)

包装十分精美的 Java Tea

![夕阳里道路旁的雕塑](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180727_183504-1-1024x768.jpg)

夕阳里道路旁的雕塑

晚餐位于库塔一个羊肠小径内的 Poppies Restaurant,依照 Google 导航的指引,步行约二十分钟最终抵达。在这里,我们享用了抵达巴厘岛以来最美味的晚餐。

从一个类似于四合院门的入口进入,视界豁然开朗。

![进入餐馆后的景象](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180727_191027-1024x768.jpg)

进入餐馆后的景象

![餐厅里坐满了各国的游客](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180727_191030-1024x768.jpg)

餐厅里坐满了来自世界各国的游客

我们点了猪扒、海鲜拼盘、西红柿汤、起司烧鸡、杂烩鸡汤、木瓜海鲜拼盘等等,每一道都是色香味俱全。

![全桌菜肴](https://iecho.cc/wp-content/uploads/2018/08/photo_2018-08-19_20-26-16-768x1024.jpg)

全桌菜肴

![木瓜海鲜拼盘](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180727_200530-1024x768.jpg)

木瓜海鲜拼盘

![起司蘑菇烧鸡](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180727_200037-1024x768.jpg)

起司蘑菇烧鸡

![海鲜拼盘](https://iecho.cc/wp-content/uploads/2018/08/IMG_20180727_200044-1024x768.jpg)

海鲜拼盘

![账单](https://iecho.cc/wp-content/uploads/2018/08/photo_2018-08-19_20-26-12-768x1024.jpg)

账单

平均每人约 130 人民币,账单换算成印尼盾足有一百多万…

IVHQ 国际志愿者 | 巴厘岛保护海龟项目全纪录(二):出发

由于天气原因航班延误了约六小时,直至中午两点才起飞。抵达深圳后,已有南航工作人员在廊桥接应我们办理急转业务。最终于晚间11点半左右提前抵达巴厘岛努拉莱伊国际机场。

抵达到达厅后,先是进行移民局登记与旅游签办理(如果需要在当地停留一个月以上),随后提取托运行李、填写入境申请表,通过海关。耗时约一小时。

在机场出口我们成功与 Green Lion 接机人员碰头,分成两车前往营地。

巴厘岛的道路蜿蜒曲折,从机场前往 Green Lion 主营地约一小时路程(凌晨),抵达营地后已是凌晨两点。在营地门口,coordinator 为大家简要介绍了营地功能区分布与宿舍安排。我们所处的寝室为六人间,三对上下床,内有一个单独的洗手间与一个独立的厕所。房间内没有空调,但是有两架风扇。加上巴厘岛此时气候相对凉爽,所以室内温度还算舒适。简单的洗漱后,大家便进入梦乡,期待一早的行程。

IVHQ 国际志愿者 | 巴厘岛保护海龟项目全纪录(一):准备

前言

IVHQ 是学院所推荐的假期国际志愿者组织,往届院内有许多小组和个人报名参加了其下的巴厘岛、斯里兰卡等国际志愿项目。

第一次接触到国际志愿者的概念时,很多人会有疑问:为什么要不远万里去国外做志愿服务工作,在国内参加校团委“阳光团”、青志协等活动不好吗?事实上,一般情况下参加国际志愿活动并不是为了志愿服务本身,而是寻求一种更加经济与充实的国际旅游体验。一些国际志愿者项目相比于一般的国际旅游能节省一部分成本(有时候不一定,可能会比跟旅行团出行产生更多额外费用),不失为一种“穷游”的方式;此外,国际义工旅程的体验较纯粹的旅游来说更加丰富、深刻而有意义。通过国际志愿服务,不仅能获得与异国文化的一次亲密接触,也有助于将来游学时更好的融入当地环境。除此之外,国际志愿组织提供的志愿服务证书也能一定程度上丰富你的大学履历。

本次项目的时间是 2018年7月22日 至 8月7日 共 17 天,含一个适应周、一个志愿服务周以及四天的自由行程。

日程

我们所选择的志愿项目持续时间为两周,服务内容为海龟保护。

第一周为迎新周,参观景点,了解文化,学习烹饪与花卉制作。

DAY EVENT
1 Introduction to Bali and Green Lion, Indonesian Customs, Rules and Expectations, Health & Safety, Ubud walking tour (2 – 3 hours), welcome dinner and Balinese dance show
2 Language lesson and local village walk through the countryside and nearby rice paddies (3 hours)
3 Language lesson and Batik painting class
4 Indonesian cooking class and flower making class (flower offerings are a daily ritual in Bali) followed by a project discussion
5 Temple visit and introduction to project, preparing for work at the placement on Monday

第二周为志愿服务周,进行具体的海龟保护活动。

TIME ACTIVITY
8.00 AM Breakfast at the volunteer house.
9.00 AM Volunteers travel to their placements to join local placement staff. Start time and daily workload depend on the project that the individual volunteer is participating in. Sometimes volunteers spend 1-2 hours planning for their project.
12.00 PM Volunteers break for lunch and resume work between 1-2pm for a further 2-3 hours.
5.00 PM Volunteer work finishes. Volunteers are free to visit local sites or go shopping.
5.30 PM Dinner at the volunteer house.

费用

类目 费用 备注
注册费 $299 + 5% 手续费 手续费不同支付平台可能不同,一般为 5%
项目费 $600 + 5% 手续费 手续费不同支付平台可能不同,一般为 5%
往返机票 4000~5000 人民币 有能力的建议加钱直飞
旅游保险 300~500 人民币
无罪公证 100~300 人民币 各个地方的公证处收费标准不同
额外住宿 700~3000 人民币 周末的个人行程以及志愿服务周的民宿
签证代办 0~1500 人民币 不建议办理 B-211 签证,稍后会做出解释
当地消费 200~400 美元 巴厘岛的香薰、发油等护理产品是伴手礼的很好选择
旅游费用 1000~2000 人民币 周末与晚间的时间可以自行安排

注:在 IVHQ 注册时使用优惠码 5F99E,可以获得 30$ 的优惠。(邀请者也能在下次参与 Program 时获得 30$ 优惠)

航班

不建议从携程、去哪儿等平台上订购特价机票:这类第三方购票平台为了赌航司降价或者拼凑廉价联程,往往不会立刻出票。如果未能出票,会给旅客产生较大损失。

此次行程,我们通过中国南方航空电话客服统一订购了深圳中转巴厘岛的往返机票,相对价格比较低。考虑到国内航班经常延误,漫长的中转时间也很难受,建议有条件的选择直飞。

注意:一般九人以下为散客,无法享受机票团体价优惠。

耗时约两天。

保险

去往第三世界国家建议在办理意外险的同时办理一定额度的财产保险。

耗时约一天。

公证

IVHQ 需要提供无犯罪记录的中英文公证函件。中途需要提供院级、校级无犯罪记录办理介绍信,身份证及户口原件复印件(集体户口需要单独提交封面)并往返于学校部门、派出所、公证处数次,缴纳一笔几百元费用后拿到一张盖有公证处钢印、印有唯一标识码的两张中英文“选词填空” A4 纸。

耗时约一周至两周。

额外住宿

默认行程的最后两天不提供住宿,行程自由安排。此时为了提高生活水平可以选择住进条件更加优越的当地民宿或者国际酒店。

志愿服务周的营地位于 Nusa Penida 岛,基础设施较差,供电经常中断,共用卫生间与浴室,地面泥沙也比较多。建议租住在附近的民宿(约 100~300 人民币/晚)。

耗时约两天。

旅游行程

携程、去哪儿等平台上可以很方便的订购巴厘岛各种一日游行程,提供就餐与全程接送,并且可以使用国内支付方式进行支付,比较方便。

签证

不建议办理 B-211 签证。印尼移民局现已知晓 Green Lion 是志愿服务组织(工作性质),签证页面上的 Green Lion 反而会招引移民局盘查。

落地后直接免签入境即可。若停留 30 天以上则办理旅游签(可延长)。

按照印度尼西亚移民局的最新要求,因志愿者目的前往印尼需要提供政府批文(Telex Visa)以办理 211-A Social & Cultural 签证。万一时间或经费上有问题,可以尝试使用落地旅游签入境,但将面临被遣返的风险。建议通过中介办理签证,减少负担。

耗时一周至一个月。