?? 新建 文本文檔 (2).txt
字號:
#include<iostream.h>
//using namespace std;
class link
{
public:
int Q_num;
int Period;
long time; //Total time
int coefficient; //系數
link* next;
link(int Q,int P)
{
Q_num=Q;
Period=P;
coefficient = 1;
time = Period * coefficient;
}
link (link* p)
{
Q_num = p->Q_num;
Period = p->Period;
time = p->time;
coefficient = p->coefficient;
next = p->next;
}
void coef1()
{
time = Period * (++coefficient);
}
};
class links
{
private:
link* head;
public:
links()
{
head = NULL;
}
void input (int Q_num,int Period);
//把值輸入到鏈表當中。
void insert (link* k); //按升序進行插入
link* GetHead(); //返回第一個節點,并把它刪掉。再把它加系數放回去。
void print(int k);
};
void links::print(int k)
{
link* s=NULL;
for(int i=0;i<k;i++)
{
s=GetHead();
cout<<s->Q_num<<endl;
}
}
void links::insert(link* k)
{
link* cur=head;
link* pre=NULL;
//while(cur!=NULL&& k->time>cur->time)
while(cur!=NULL&& (k->time>cur->time||((k->time==cur->time)&&(k->Q_num>cur->Q_num))))
{
pre=cur;
cur=cur->next;
}
if(cur==head)
head=k;
else{
pre->next = k;
}
k->next = cur;
}
void links::input (int Q_num,int Period)
{
link* s = new link(Q_num,Period);
insert(s);
}
link* links::GetHead()
{
link* s;
link* p;
p=head;
head = head->next;
s = new link (p);
s->coef1();
insert(s);
return p;
}
int main()
{
char str[10];
int Q_nums;
int Periods;
int k;
links* c = new links();
cin>>str; //cin>>str>>Q_nums>>Periods;
//把第一個值也輸進去。
while (*str!='#')
{
cin>>Q_nums>>Periods;
c->input(Q_nums,Periods);
cin>>str;
//輸入Instruction
}
cin>>k;
c->print(k);
return 0;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -