标签:codeforces yy
题意:模拟一个网页的跳转按钮,当前页为p,左右显示的页号为p-k,p+k,当前页为1时没有左箭头,当前页为n时没有右箭头,显示的页号必须合法(在1~n之间)
分析:按照条件直接做。这种题最主要的就是细心。
代码:
#include<iostream> #include<cstdio> #include<algorithm> #define min(a,b) a<b?a:b #define INF 1000000007 using namespace std; int n,p,k; int main() { while(cin>>n>>p>>k){ int l=p-k; int r=p+k; if(l<=0) l=1; if(r>n) r=n; { if(l!=1) printf("<< "); for(int i=l;i<=r;i++){ if(i==p) { if(i!=r) printf("(%d) ",i); else printf("(%d)",i); } else{ if(i!=r) printf("%d ",i); else cout<<i; } } if(r!=n) printf(" >>\n"); else printf("\n"); } } }
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:codeforces yy
原文地址:http://blog.csdn.net/ac_0_summer/article/details/46960455