我的程式如下,個人覺得還蠻合理的,但一直過不了 ORZ,善心大得有空請幫我看看,感激不盡(我知道我很弱 >"<)
#include <iostream>
using namespace std;
int main()
{
int n,m,k,i,j,h,g,c;
cin >>n >>m >>k;
int a[n];
for (i=0;i<n;i++){
a[i]=i+1;}
for (i=0;i<k;i++){
int b[n-1];
for(j=0;j<n-m;j++){
b[j]=a[m+j]; //把爆掉的下一個當做b[0]
}
for(h=0;h<m-1;h++){
b[n-m+h]=a[h]; //繼續存完
}
n=n-1;
for(g=0;g<n;g++){
a[g]=b[g]; //把b[]存進a[]
}
}
cout << a[0] << endl;
return 0;
}
我的程式如下,個人覺得還蠻合理的,但一直過不了 ORZ,善心大得有空請幫我看看,感激不盡(我知道我很弱 >"<)
#include
using namespace std;
int main()
{
int n,m,k,i,j,h,g,c;
cin >>n >>m >>k;
int a[n];
for (i=0;i<n;i++){
a[i]=i+1;}
for (i=0;i<k;i++){
int b[n-1];
for(j=0;j<n-m;j++){
b[j]=a[m+j]; //把爆掉的下一個當做b[0]
}
for(h=0;h<m-1;h++){
b[n-m+h]=a[h]; //繼續存完
}
n=n-1;
for(g=0;g<n;g++){
a[g]=b[g]; //把b[]存進a[]
}
}
cout << a[0] << endl;
return 0;
}
這題不建議使用array,vector在刪除時不會出現空位,在這題很好用。
我的程式如下,個人覺得還蠻合理的,但一直過不了 ORZ,善心大得有空請幫我看看,感激不盡(我知道我很弱 >"<)
#include
using namespace std;
int main()
{
int n,m,k,i,j,h,g,c;
cin >>n >>m >>k;
int a[n];
for (i=0;i<n;i++){
a[i]=i+1;}
for (i=0;i<k;i++){
int b[n-1];
for(j=0;j<n-m;j++){
b[j]=a[m+j]; //把爆掉的下一個當做b[0]
}
for(h=0;h<m-1;h++){
b[n-m+h]=a[h]; //繼續存完
}
n=n-1;
for(g=0;g<n;g++){
a[g]=b[g]; //把b[]存進a[]
}
}
cout << a[0] << endl;
return 0;
}
這題不建議使用array,vector在刪除時不會出現空位,在這題很好用。
<iostream>
我的程式如下,個人覺得還蠻合理的,但一直過不了 ORZ,善心大得有空請幫我看看,感激不盡(我知道我很弱 >"<)
#include <iostream>
using namespace std;
int main()
{
int n,m,k,i,j,h,g,c;
cin >>n >>m >>k;
int a[n];
for (i=0;i<n;i++){
a[i]=i+1;}
for (i=0;i<k;i++){
int b[n-1];
for(j=0;j<n-m;j++){
b[j]=a[m+j]; //把爆掉的下一個當做b[0]
}
for(h=0;h<m-1;h++){
b[n-m+h]=a[h]; //繼續存完
}
n=n-1;
for(g=0;g<n;g++){
a[g]=b[g]; //把b[]存進a[]
}
}
cout << a[0] << endl;
return 0;
}
這題不建議使用array,vector在刪除時不會出現空位,在這題很好用。
<iostream>