纯搜的尽力了(只有60,其他超时)

P1145 约瑟夫

```cpp var k,n,i,j,m,last,x,kk,lllllll:longint; flag:array[1..26]of longint; function check:boolean; begin last:=0; for i:=n downto k+1 do begin x:=m mod i; if x=0 then x:=i; for j:=last+1 to n do if flag[j]<>m then begin dec(x); if x=0 then break; end; if j<=k then exit(false); if x>0 then if x<=k then exit(false) else begin for j:=k+1 to n do if flag[j]<>m then begin dec(x); if x=k then break; end; end; flag[j]:=m; last:=j; end; exit(true); end; begin read(k); n:=2*k; m:=k+1; while not check do inc(m); writeln(m); end. ```
by dengwu @ 2016-05-19 20:12:07


希望对你有所帮助
by dengwu @ 2016-05-19 20:14:40


不能纯用搜索。 肯定超时
by dengwu @ 2016-05-19 20:15:59


直接打表就可以了呀 附代码: ```cpp #include <cstdio> int main(){ int n; scanf("%d",&n); switch(n){ case 1:printf("2");break; case 2:printf("7");break; case 3:printf("5");break; case 4:printf("30");break; case 5:printf("169");break; case 6:printf("441");break; case 7:printf("1872");break; case 8:printf("7632");break; case 9:printf("1740");break; case 10:printf("93313");break; case 11:printf("459901");break; case 12:printf("1358657");break; case 13:printf("2504881");break; } return 0; } ```
by Deny_小田 @ 2016-05-20 17:10:17


666
by Kidd @ 2017-01-14 11:19:10


@[Deny\_小田](/space/show?uid=17170) 说 从哪搞到的数据
by kitakami @ 2017-09-21 14:20:26


@[啊♂幻想乡](/space/show?uid=56251) ,当时不懂事,现在我也不知道从哪搞到的
by Deny_小田 @ 2017-09-23 15:14:14


@[Deny\_小田](/space/show?uid=17170) 我是来挖坟的
by kitakami @ 2017-09-23 18:32:55


@[Deny_小田](/space/show?uid=17170) 我们C党不该跑到P党帖里的
by yy233 @ 2018-06-01 22:57:59


@[Deny_小田](/space/show?uid=17170) 不然以后你跟Java玩怎么的了
by yy233 @ 2018-06-01 23:00:47


| 下一页