GitHub!我来了!!!
对大名鼎鼎的GitHub早有耳闻,但是一直没时间,也主要是没那个需求,所以就一直没去学。昨天经过各种搜索学会了最基本的使用方法。其实要不是最近走路的时间多了估计我也不会这么积极的学Git...
于是我Sign in了许久之前注册的账号,逛了一圈还发现了AlphaGO的代码(惊),https://github.com/alphagov/whitehall,貌似很高大上= = 小心地fork了一下看看...好吧,不是很懂...
在建立了一个练手的项目之后,熟悉了大部分用法,于是删掉了这个临时的项目,不过在PublicActivity里面居然还能看见...
于是!我把从前在各种平台上都没能进行的项目企划: WarTime-Project 搬到了GitHub上来。和我一起完成这个项目的还有几个C++/Java初学者,大家在一起,也算互相学习了。
WarTime-Project On GitHub 地址:https://github.com/Kiritow/WarTime-Project,欢迎前来监督项目进程,欢迎Fork~
BestCoder Round #76
昨晚上的BC据说是“世界上最强大的国家”出的题目,然而并没有什么卵用...
只做出了一道题,剩下的一个多小时一直在想最后一道题(1004),但是一直超时后来也不是特别明白...
DZY喜欢玩球。 他有n个球,装进一个大盒子里。每个球上面都写着一个整数。 有一天他打算从盒子中挑两个球出来。他先均匀随机地从盒子中挑出一个球,记为A。他不把A放回盒子,然后再从盒子中均匀随机地挑出一个球,记为B。 如果A上的数字严格大于B上的数字,那么他就会感到愉悦。 现在告诉你每个球上的数字,请你求出他感到愉悦的概率是多少。
第一行t,表示有t组数据。 接下来t组数据。每组数据中,第一行包含一个整数n,第二行包含n个用空格隔开的正整数ai,表示球上的数字。 (1≤t≤300,2≤n≤300,1≤ai≤300)
对于每个数据,输出一个实数答案,保留6位小数。
2 3 1 2 3 3 100 100 100
0.500000 0.000000
#include <cstdio> #include <cstdlib> #include <cstring> using namespace std; int data[400]; int main() { int t; scanf("%d",&t); for(int turn=0;turn<t;turn++) { int n; scanf("%d",&n); memset(data,0,sizeof(int)*400); int tmp; for(int i=0;i<n;i++) { scanf("%d",&tmp); data[tmp]++; } int cnt=0; for(int i=0;i<400;i++) { if(data[i]>0) { int ans=0; for(int j=0;j<i;j++) { if(data[j]>0) ans+=data[j]; } cnt+=ans*data[i]; } } printf("%.6f\n",(double)cnt/(n*(n-1))); } return 0; }
至于1002在网上找到了一个代码...
题目如下:
DZY喜欢拆分数字。他想知道能否把n拆成恰好k个不重复的正整数之和。 思考了一会儿之后他发现这个题太简单,于是他想要最大化这k个正整数的乘积。你能帮帮他吗? 由于答案可能很大,请模109+7输出。
第一行t,表示有t组数据。 接下来t组数据。每组数据包含一行两个正整数n,k。 (1≤t≤50,2≤n,k≤109)
对于每个数据,如果不存在拆分方案,输出−1;否则输出最大乘积模109+7之后的值。
4 3 4 3 2 9 3 666666 2
-1 2 24 110888111
第一组数据没有合法拆分方案。 第二组数据方案为3=1+2,答案为1×2=2 第三组数据方案为9=2+3+4,答案为2×3×4=24。注意9=3+3+3是不合法的拆分方案,因为其中包含了重复数字。 第四组数据方案为666666=333332+333334,答案为333332×333334=111110888888。注意要对109+7取模后输出,即110888111。
至于3、4题AC率极低... 在网上几乎找不到解题代码...(心痛)