周星星_ level
获赞
704
粉丝
32
关注
16
看过 TA
106
广东某工业大学
2017
C++
IP属地:未知
暂未填写个人简介
私信
关注
2016-09-23 22:22
已编辑
广东某工业大学 C++
今天考试第一个编程题如下: 题目不算难,暴力思路,用vector存储每条路径,包括新的旧的,计算所有路径中最大值。代码如下: int main() { int n; while(cin>>n) { if(n<=1)//0 1 { cout<<n<<endl; break; } int res=0; vector<vector<int> ...
神様:import java.util.Scanner; class Main{ public static void main(String[] args) { Scanner in= new Scanner(System.in); while(in.hasNext()){ int n = in.nextInt(); int[] tree = new int[n]; for (int i = 0; i < tree.length; i++) { tree[i]=-1; } for(int i =0;i<n-1;i++){ int p = in.nextInt(); int c = in.nextInt(); tree[c] =p; } int max=1; int count =0; for (int i = n-1; i >0; --i) { int cur=i; while(cur!=-1) { cur = tree[cur]; count++; } if(count>max) max =count; count=0; } System.out.println(max); } } } //这个应该是O(n)的做法了吧 AC了
投递小米集团等公司10个岗位 >
0 点赞 评论 收藏
分享
2016-09-05 13:22
已编辑
广东某工业大学 C++
代码如下:&nbsp;class&nbsp;x&nbsp;{&nbsp;public:&nbsp;virtual&nbsp;void&nbsp;f(){cout&lt;&lt;&quot;x&quot;&lt;&lt;endl;}&nbsp;};&nbsp;class&nbsp;a:public&nbsp;x&nbsp;{&nbsp;public:&nbsp;virtual&nbsp;void&nbsp;f(){cout&lt;&lt;&quot;a&quot;&lt;&lt;endl;}&nbsp;};&nbsp;class&nbsp;b:public&nbsp;x&nbsp;{&nbsp;public:&nbsp;virtual&nbsp;void&nbsp;f(){cout&lt;&lt;&quot;b&quot;&lt;&lt;endl;}&nbsp;};&nbsp;class&nbsp;d:public&nbsp;a&nbsp;{&nbsp;public:&nbsp;...
InterOAO:先说一下static_cast 用static_cast 转换的时候是不安全的, 该代码能将不是继承关系的指针转为b , 不会出现编译错误的前提是 声明的时候, 其余几个指针类型都是void*。 虽然可以转换, 但是也只是能调用函数, 不能正常输出成员变量的值, 因为static_cast不安全, 它会 将错误保留下去, 大家可以试试。 #include <iostream> using namespace std;class x { public: int i; x(){i=1;} virtual void f(){cout<<"x"<<endl;} }; class a:public x { public: int j; a(){j=2;} void f(){cout<<"a"<<endl;} }; int main() { x *p1 = new x; a *p2 = static_cast<a*>(p1); p2->f();//x cout<<p2->i<<endl;//1 cout<<p2->j<<endl;//0 return 0; } //static_cast将一个指向x类型的指针转为指向a类型的指针, //虽然正确,但是不安全, 因为此时p2并不能访问j,它访问的是 //垃圾值. 如果使用dynamic_cast 他就会检查出这种不安全 //情况, 从而返回NULL. 另外,楼主的函数之所以会这样输出daxbe 我觉得是因为 每一个类都继承x, x中的函数是virtual类型的, 那派生类重写的函数也是virtual类型的, 既然是虚函数, 调用的时候就会去虚函数表中找函数地址,找虚函数表的时候不看指针类型,只看实际指向的内容(这就是能多态的一部分原因),因为他们实际指向各自的函数,所以最后会输出各自的结果。 至于楼上说的静态绑定,我觉得不对,静态绑定是指普通函数的调用使用的是静态绑定,一旦函数是虚函数,就不能是静态绑定的,一定是通过查表才决定绑定哪个函数。 我也是小白,如果大家有觉得我说的不对的地方,帮我指正啦。
投递腾讯等公司10个岗位 >
0 点赞 评论 收藏
分享
2016-06-16 15:05
广东某工业大学 C++
0 点赞 评论 收藏
分享
关注他的用户也关注了:
牛客网
牛客企业服务