数据库快考试了 恶补c++ 复习写的小作业 将就着看吧
thallium20122010/06/29软件综合 IP:天津
1 被鄙视的金字塔 复习循环而已
#include<iostream.h>
void main()
{
for(int i=1;i<=9;i++)
{
     for(int j=1;j<=40-i;j++)
         cout<<" ";
     for(int k=1;k<=2*i-1;k++)
         cout<<"*";
     cout<<endl;
}
}
来自:计算机科学 / 软件综合
28
已屏蔽 原因:{{ notice.reason }}已屏蔽
{{notice.noticeContent}}
~~空空如也
thallium2012 作者
14年7个月前 IP:未同步
229957
#include<iostream.h>
void main()
{
int i,j,k,m,n;
for(i=1;i<=9;i++)
for(j=0;j<=9;j++)
     for(k=0;k<=9;k++)
     {
         m=i*i*i+j*j*j+k*k*k;
         n=100*i+10*j+k;
         if(m==n)
             cout<<m<<endl;
     }
}
水仙花数 其实 有的课 欠账是要还得。。。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
stitch
14年7个月前 IP:未同步
229958
看不懂 [s:245]
-100
科创币
phpskycn
2010-06-29
灌水
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
thallium2012作者
14年7个月前 IP:未同步
229959
continue语句
#include<iostream.h>
#include<iomanip.h>
void main()
{
for(int n=71;n<=1000;n++)
{
     if(n%71!=0)
         continue;
     cout<<setw(5)<<n;
}
cout<<endl;
}
被71整除的数 93别鄙视我
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
stitch
14年7个月前 IP:未同步
229961
一般来说,超过两个For……我就晕了。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
thallium2012作者
14年7个月前 IP:未同步
229962
计算分数 出去最高最低分
#include<iostream.h>
#include<iomanip.h>
void main()
{
float s,maxs,mins,sum=0;
maxs=0;mins=10;
cout<<"输入九个分数"<<endl;
    for(int i=1;i<=9;i++)
    {
     cin>>s;
     sum+=s;
     if(s>maxs)
         maxs=s;
     if(s<mins)
         mins=s;
    }
    sum=sum-maxs-mins;
    cout<<"总分"<<sum<<endl;
    cout<<"最后得分"<<sum/7<<endl;

}
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
小特斯拉圈圈
14年7个月前 IP:未同步
229970
引用第4楼stitch于2010-06-29 16:59发表的  :
一般来说,超过两个For……我就晕了。

一般来说,看见代码,我就晕了。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
我说要有光
14年7个月前 IP:未同步
230003
这个。。。 数据库考试。。。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
joyeep
14年7个月前 IP:未同步
230103
好好考试,编程题目不难,想当年我C++只扣了2分 [s:253]
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
coolicelee
14年7个月前 IP:未同步
230947
这个用C写好一些,用C++貌似没有什么面向对象的东西
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
newsolider1
14年1个月前 IP:未同步
268714
我想学习下C++和单片机方面,希望版主能推荐几本书或者资料,541597839@QQ。com
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
popleaf1
13年11个月前 IP:未同步
283237
你的头文件还是用的老的*.h格式。最好用不带*.h的新头文件
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
新奕秀颖
13年8个月前 IP:未同步
296689
数据库考试跟恶补C++之间的逻辑关系比你跟我的距离还远
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ltl
13年8个月前 IP:未同步
296699
OIer飘过……(LZ把我们五年级学的东西复习了一遍)
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ltl
13年8个月前 IP:未同步
296701
为一下LZ是什么专业的?为什么学C++?难道是搞信息的?表示对现在大学教的内容不解,求LZ介绍
顺便贴个小程序,一道题目,前一段写的(ZJOI《树的统计》 - 树链剖分)
/*
Title: count
Data: 2011-1-30
*/

#include <iostream>
#include <memory.h>
#include <cstdio>
#include <cstdlib>
#include <cmath>

#define InputFileName        "XXXXXXXX"
#define OutputFileName        "count.out"

using namespace std;

const int MaxN = 31000, oo = 0x7FFFFFFF;

bool View[MaxN];
int n, m, u[MaxN*2], v[MaxN*2], Next[MaxN*2], Head[MaxN], w[MaxN], Size[MaxN], ENum, Heavy[MaxN], Depth[MaxN], d[MaxN*2][20], Pos[MaxN], Total, Line[MaxN], Father[MaxN];
int Left[MaxN*4], Right[MaxN*4], Sum[MaxN*4], MaxNum[MaxN*4], STNum[MaxN], STSize[MaxN], STTotal, Root[MaxN], STPos[MaxN], S[MaxN], T[MaxN];

inline void AddEdge(const int x, const int y)
{
    Next[++ENum] = Head[x];
    Head[x] = ENum;
    u[ENum] = x;
    v[ENum] = y;
}

void Init()
{
    scanf("%d", &n);
    for (int i = 1, x, y; i < n; ++i)
    {
        scanf("%d%d", &x, &y);
        AddEdge(x, y);
        AddEdge(y, x);
    }
    for (int i = 1; i <= n; ++i)
        scanf("%d", w+i);
    scanf("%d", &m);
}

void DFS(const int t)
{
    View[t] = Size[t] = 1;
    d[Pos[t] = ++Total][0] = t;
    for (int i = Head[t]; i; i = Next[i])
        if (! View[v[i]])
        {
            Depth[v[i]] = Depth[Father[v[i]] = t]+1;
            DFS(v[i]);
            d[++Total][0] = t;
            Size[t] += Size[v[i]];
            if (! Heavy[t] || Size[Heavy[t]] < Size[v[i]])
                Heavy[t] = v[i];
        }
}

inline int Max(const int x, const int y)
{
    return x > y ? x : y;
}

inline int RMQMin(const int x, const int y)
{
    return Depth[x] < Depth[y] ? x : y;
}

void RMQInitialize()
{
    for (int i, j = 1, k = (int)(log2(Total)+1E-8), l; j <= k; ++j)
        for (i = 1, l = 1 << j; i+l-1 <= Total; ++i)
            d[i][j] = RMQMin(d[i][j-1], d[i+(l >> 1)][j-1]);
}

inline int RMQ(int x, int y)
{
    if (Pos[x] > Pos[y])
    {
        int z = x;
        x = y;
        y = z;
    }
    const int k = (int)(log2(Pos[y]-Pos[x]+1)+1E-8);
    return RMQMin(d[Pos[x]][k], d[Pos[y]-(1 << k)+1][k]);
}

void NewTree(const int t, const int l, const int r)
{
    if (l == r)
    {
        Sum[t] = MaxNum[t] = w[Line[l]];
        return;
    }
    const int mid = l+r >> 1;
    NewTree(Left[t] = ++STTotal, l, mid);
    NewTree(Right[t] = ++STTotal, mid+1, r);
    Sum[t] = Sum[Left[t]]+Sum[Right[t]];
    MaxNum[t] = Max(MaxNum[Left[t]], MaxNum[Right[t]]);
}

void Build()
{
    memset(View, 0, sizeof(View));
    Total = 0;
    for (int k = 1, i, j; k < 2*n; ++k)
        if (! View[i = d[k][0]])
        {
            for (View[Line[STPos[i] = STSize[++Total] = 1] = j = i] = 1; Heavy[j]; View[Line[STPos[Heavy[j]] = ++STSize[Total]] = j = Heavy[j]] = 1);
            S[Total] = i;
            T[Total] = j;
            for (STNum[j = i] = Total; Heavy[j]; STNum[j = Heavy[j]] = Total);
            NewTree(Root[Total] = ++STTotal, 1, STSize[Total]);
        }
}

void Modify(const int t, const int l, const int r, const int p, const int k)
{
    if (l == r)
    {
        Sum[t] = MaxNum[t] = k;
        return;
    }
    const int mid = l+r >> 1;
    if (p <= mid)
        Modify(Left[t], l, mid, p, k);
    else
        Modify(Right[t], mid+1, r, p, k);
    Sum[t] = Sum[Left[t]]+Sum[Right[t]];
    MaxNum[t] = Max(MaxNum[Left[t]], MaxNum[Right[t]]);
}

int STSum(const int t, const int l, const int r, const int x, const int y)
{
    if (x <= l && y >= r)
        return Sum[t];
    int mid = l+r >> 1, Res = 0;
    if (x <= mid)
        Res = STSum(Left[t], l, mid, x, y);
    if (y > mid)
        Res += STSum(Right[t], mid+1, r, x, y);
    return Res;
}

int STMax(const int t, const int l, const int r, const int x, const int y)
{
    if (x <= l && y >= r)
        return MaxNum[t];
    int mid = l+r >> 1, Res = -oo;
    if (x <= mid)
        Res = STMax(Left[t], l, mid, x, y);
    if (y > mid)
        Res = Max(Res, STMax(Right[t], mid+1, r, x, y));
    return Res;
}

inline int GetSum(const int x, int y)
{
    int Res = 0;
    for (; Depth[x] < Depth[S[STNum[y]]]; y = Father[S[STNum[y]]])
        Res += STSum(Root[STNum[y]], 1, STSize[STNum[y]], 1, STPos[y]);
    Res += STSum(Root[STNum[y]], 1, STSize[STNum[y]], STPos[x], STPos[y]);
    return Res;
}

inline int GetMax(const int x, int y)
{
    int Res = -oo;
    for (; Depth[x] < Depth[S[STNum[y]]]; y = Father[S[STNum[y]]])
        Res = Max(Res, STMax(Root[STNum[y]], 1, STSize[STNum[y]], 1, STPos[y]));
    Res = Max(Res, STMax(Root[STNum[y]], 1, STSize[STNum[y]], STPos[x], STPos[y]));
    return Res;
}

int main()
{
    #ifndef ONLINE_JUDGE
    freopen(InputFileName, "r", stdin);
    freopen(OutputFileName, "w", stdout);
    #endif
    Init();
    memset(View, 0, sizeof(View));
    Depth[1] = 1;
    DFS(1);
    RMQInitialize();
    Build();
    char cmd[10];
    int x, y, LCA, Ans, sx, sy;
    for (; m; --m)
    {
        scanf("%s%d%d", cmd, &x, &y);
        if (cmd[0] == 'C')
            Modify(Root[STNum[x]], 1, STSize[STNum[x]], STPos[x], w[x] = y);
        else
        {
            LCA = RMQ(x, y);
            if (cmd[1] == 'M')
                Ans = Max(GetMax(LCA, x), GetMax(LCA, y));
            else
                Ans = GetSum(LCA, x)+GetSum(LCA, y)-w[LCA];
            printf("%d\\n", Ans);
        }
    }
    return 0;
}
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ltl
13年8个月前 IP:未同步
296702
其实我觉得LZ只要把上面的Build函数看懂考试就没问题了………………
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
featherwit
13年8个月前 IP:未同步
297580
ls高手,俺鸡蛋里挑点骨头

1、“d[Pos[t] = ++Total][0] = t;”这种代码尽量少用,对效率上并没有提高的作用,有时候甚至会降低效率。
而且降低了可读性,并且在稍大点的中就可能会给调试带来很大的麻烦~~。
2、for循环中,类似 ;m;++m这种也不推荐,条件式最好别这么写
虽然俺知道你这个是专注于算法本身-。-
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ltl
13年8个月前 IP:未同步
297581
呵呵,谢谢LS的指点

其实这是我第一次写树链剖分的代码……本来还算正常……后来看着那堆for有点不爽就缩在一行for里面了

为什么不推荐这样写??我看不少神犇的程序都是这样写的,感觉很美。你是说要写成m > 0或者m != 0这样吗?
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
cwood
13年8个月前 IP:未同步
297595
回 楼主(thallium2012) 的帖子
干嘛引用 iostream.h?
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
featherwit
13年8个月前 IP:未同步
297603
引用第17楼ltl于2011-06-01 11:12发表的  :
呵呵,谢谢LS的指点

其实这是我第一次写树链剖分的代码……本来还算正常……后来看着那堆for有点不爽就缩在一行for里面了

为什么不推荐这样写??我看不少神犇的程序都是这样写的,感觉很美。你是说要写成m > 0或者m != 0这样吗?


谈不上指点,俺水平不高,只是作为代码民工对可读性比较在意而已-。-
我觉得还是写成m > 0或者m != 0这样比较好,很容易就看明白。

另外对于我说的那个第一点说明下,经验之谈而已,可能大家见解不同。
1、把赋值包含在里面,如果简单的程序还好办,但结构层次比较多,复杂的时候,你没法分开判断究竟问题出在哪里。类似比较严重的就是这种vector_some[ function(...)],
在一些情况下你完全没法判断function到底返回了什么。
2、自增自减运算符在不同的编译器中结合次序是不同的,所以尽量少用,如果用的话尽量语义明晰,不会出现二义性。你这个里面用的当然就没问题~~
3、上在某些函数中用了很多次类似dimenson[ index ]这样的调用,而如果一个非常大的函数要用多次的话,可以根据实际情况来放在某个变量中,
否则每次都要进行索引是很浪费资源的。
极端点的例子,我见过在for循环中对同一个string进行strlen()的代码,这样每迭代一次都要重新计算一次strlen(),本来应该很快的东西也变慢了。
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ltl
13年8个月前 IP:未同步
297610
嗯,效率的部分我是很注意的,毕竟我是搞OI的,比软工要求严格的多,不过主要还是针对时间复杂度的

不过对于自增自减的运算顺序的记得在AnsiC++标准里面有规定的
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
featherwit
13年8个月前 IP:未同步
297615
呃...我记得在ANSI C和ANSI C++标准中关于expresstion部分对于类似使用prefix increcment的表达式的行为是未定义的,不晓得是不是记错了[s:242]
就是比如(j++)+(j++)+((j++)这种表达式的行为是未定义的,所以才有很多编译器的差别。

至于时间复杂度上的考量,在我的实际工程中的确没那么严格,因为很少涉及到那么复杂的需求~
而一般的对效率有严格要求的,已经有很多非常成熟的算法和模型作为参考,自然就不用俺们费脑子了
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ltl
13年8个月前 IP:未同步
297619
你们用的就是我们这些人yy出来的模型……………………

话说a+++b这种东西才比较坑爹……
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
featherwit
13年8个月前 IP:未同步
297627
是啊,所以搞计算机理论研究的人我还是很佩服的。
当初本来打算走这条路滴...后来因为懒惰可耻的跑去工作了,把推荐信都准备好的老师气了个半死[s:242]
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ltl
13年8个月前 IP:未同步
297631
我觉得当码农好无聊………………前几周去有道难题,结果作为队伍中的码农直接敲了6道题,这种感觉它自虐了……最后我们队还只有7道……悲催……
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
featherwit
13年8个月前 IP:未同步
297711
引用第24楼ltl于2011-06-01 17:33发表的  :
我觉得当码农好无聊………………前几周去有道难题,结果作为队伍中的码农直接敲了6道题,这种感觉它自虐了……最后我们队还只有7道……悲催……



我是个极其机器懒惰的家伙,懒的看书,懒的学习,所以代码民工这种活比较适合我~~
每天可以看电影打游戏,也不会耽误工作,虽然赚的银子很少,不过也乐得自在
不过...话说无论是谁我都不会推荐他做这个工作~习惯是一种麻木
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ltl
13年8个月前 IP:未同步
297798
我还是比较想以后能混进Google或者M$………………
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
featherwit
13年8个月前 IP:未同步
297799
引用第26楼ltl于2011-06-02 13:34发表的  :
我还是比较想以后能混进Google或者M$………………


应届的话,背景没问题应该就没问题。
比如二流学校毕业的,而且没人推荐,那么连简历都不会看滴
反之就很容易了,何况你还有实力~~~
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论
ltl
13年8个月前 IP:未同步
297805
好吧……我还是先考虑大学的问题吧……都不知道能不能保送fdu……
引用
评论
加载评论中,请稍候...
200字以内,仅用于支线交流,主线讨论请采用回复功能。
折叠评论

想参与大家的讨论?现在就 登录 或者 注册

所属专业
上级专业
同级专业
thallium2012
学者 机友 笔友
文章
359
回复
1866
学术分
7
2010/02/10注册,19天20时前活动
暂无简介
主体类型:个人
所属领域:无
认证方式:手机号
IP归属地:未同步
文件下载
加载中...
{{errorInfo}}
{{downloadWarning}}
你在 {{downloadTime}} 下载过当前文件。
文件名称:{{resource.defaultFile.name}}
下载次数:{{resource.hits}}
上传用户:{{uploader.username}}
所需积分:{{costScores}},{{holdScores}}下载当前附件免费{{description}}
积分不足,去充值
文件已丢失

当前账号的附件下载数量限制如下:
时段 个数
{{f.startingTime}}点 - {{f.endTime}}点 {{f.fileCount}}
视频暂不能访问,请登录试试
仅供内部学术交流或培训使用,请先保存到本地。本内容不代表科创观点,未经原作者同意,请勿转载。
音频暂不能访问,请登录试试
支持的图片格式:jpg, jpeg, png
插入公式
评论控制
加载中...
文号:{{pid}}
投诉或举报
加载中...
{{tip}}
请选择违规类型:
{{reason.type}}

空空如也

加载中...
详情
详情
推送到专栏从专栏移除
设为匿名取消匿名
查看作者
回复
只看作者
加入收藏取消收藏
收藏
取消收藏
折叠回复
置顶取消置顶
评学术分
鼓励
设为精选取消精选
管理提醒
编辑
通过审核
评论控制
退修或删除
历史版本
违规记录
投诉或举报
加入黑名单移除黑名单
查看IP
{{format('YYYY/MM/DD HH:mm:ss', toc)}}