#include<iostream>
using namespace std;
int main()
{
int a[110] = { 0 };
int n, m,k=0,c=0,i=0;
cin >> n >> m;
while (c!= n)
{
i++;
if (i > n) i = 1;
if (a[i] == 0)
{
k++;
if (k == m)
{
a[i] = 1;
cout << i << ',';
k = 0;
c++;
}
}
}
return 0;
}
#include <iostream>
#include <list>
#include <string>
using namespace std;
string josephusCircle(int m, const list<char>& people) {
list<char> circle = people;
string result;
auto it = circle.begin();
while (!circle.empty()) {
for (int i = 1; i < m; ++i) {
++it;
if (it == circle.end()) {
// 循环到链表末尾,重新开始
it = circle.begin();
}
}
result += *it;
it = circle.erase(it);
if (it == circle.end()) {
// 如果删除的是最后一个元素,重新开始
it = circle.begin();
}
// 在输出中添加逗号
if (!circle.empty()) {
result += ',';
}
}
return result;
}
int main() {
int m;
std::cin >> m;
std::string names;
std::cin.ignore(); // 忽略第一行末尾的换行符
std::getline(std::cin, names);
// 将人名分割为链表
std::list<char> people;
for (char name : names) {
if (std::isalpha(name)) {
people.push_back(name);
}
}
// 调用约瑟夫环函数并输出结果
std::string result = josephusCircle(m, people);
std::cout << result << std::endl;
return 0;
}