using namespace std
typedef struct circle_node
{
int seq
int val
circle_node* next
circle_node(int _val, int _seq)
{
val = _val
seq = _seq
next = NULL
}
}circle_node_t
void joseph()
{
int loop cin >> loop
while (loop--)
{//
int N, M
cin >> N >> M
int val
cin >> val
circle_node_t* head = new circle_node_t(val, 1)
head->next = head //建立第一个节点
circle_node_t* tail = head
//建环
int seq = 2
for (int n = 1 n < N n++)
{//
cin >> val
circle_node_t* xnode = new circle_node(val, seq++)
xnode->next = tail->next
tail->next = xnode
tail = xnode
}
//调试一下看看有没有输出
//circle_node_t* pp = head
//if (pp)
//{//
// do
// {//
// cout << pp->seq << ", "
// pp = pp->next
// } while (pp != head)
// cout << endl
// do
// {//
// cout << pp->val << ", "
// pp = pp->next
// } while (pp != head)
// cout << endl
//}
circle_node_t* p = head
circle_node_t* q = tail
//依次出圈
int m = M-1
while (1)
{//
if (m > N)
{//
m %= N //避免多次绕圈
}
for ( m m--)
{//
q = p
p = p->next
}
q->next = p->next //删除p
cout << p->seq << " "
N--
m = p->val-1
delete p
p = NULL
if (N == 0)
{//
head = NULL
break
}
else
{
p = q->next
}
}
cout << endl
}
}
最外面的输出一般是这样的
int loop cin >> loopwhile(loop--)
{
//每次的处理
}
我就是建环的,别看网上那些虚的,我告诉你,这个专业学建筑学和环境控制,什么流体力学,传热学,工程热力学是三大支柱,专业的前景很好,就业率不错,但是出来干这个专业的人不会太多,想靠专业吃饭的人最好的是进设计院,然后是空调厂家或建筑公司望采纳
土木可以说是山东省第一,建筑学,城规,造价,热能都很好,不过他们的分数线都很高一本线以上外省更高!信工程、计算机这两类专业在我们学校算一般的专业,要不怎么叫建筑大学!只要与建筑挂钩不多的都不咋地!!希望对你有帮助,还望采纳!!!