TG助学课——noilinux
8.2 深夜
1 #include<bits/stdc++.h> 2 using namespace std; 3 #define _DO_CMDS(cmds) for(int _index=0;_index<sizeof(cmds)/4;++_index){system((cmds[(_index)]));} 4 char *build[]{ 5 "g++ -o test test.cpp", 6 "g++ -o rand rand.cpp -O2", 7 "g++ -o std std.cpp -O2" 8 }; 9 char *randata[]{ 10 "./rand > a.in", 11 "./std < a.in > a.ans" 12 }; 13 int main() 14 { 15 _DO_CMDS(build); 16 int runtime=100; 17 for(int i=1;i<=runtime;++i) 18 { 19 _DO_CMDS(randata); 20 printf("Case %d:"i); 21 if(system("./test < a.in > a.out")!=0) 22 {cout<<"RE"<<endl;break;} 23 else if(system("diff -b a.out a.ans")) 24 {cout<<"WA"<<endl;break;} 25 else cout<<"AC"<<endl; 26 } 27 return 0; 28 }
没什么压力,跳着看的
之后的shell直接没看了2333
SX——数据结构进阶(1)
8.3 11:00~15.30
(简单/量产数据结构)
大概从各种套的优势开始就懵逼了,之后还要再回放复习。
这一次只能当长见识了,果然SX的东西很难啊QAQ。
TG——算法基础
8.4 下午
前面的STL是三倍速+跳着看的。
定义: map<type1,type2>mp; eg: map<double,int>mp; mp[2.1]=1; mp[2.2]=2; //map可强行理解为 以type1为下标的数组 //如果mp[x]未被使用过 mp.find(x)会返回mp的尾迭代 //if(mp.find(x)==mp.end())判断用过与否
二分果然又双叒叕难了一波 平面最接近点对又难倒了一次
顺便强行学会了左开右闭的二分方法让我再吹一次lower_bound和upper_bound