青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

sgu 502

Posted on 2010-12-07 18:23 王之昊 閱讀(412) 評論(0)  編輯 收藏 引用 所屬分類: sgu
題目大意是給你一個數(shù) n (1<=n <= 1017), 現(xiàn)在可以重排 n 的數(shù)位,尋找一種排列使得其能夠整除 17。

開始寫了一個集合DP的代碼。結(jié)果TLE,感覺比較奇怪,算復(fù)雜度是17*17*(2^17)=3千多萬。不過過了300+的人,做到這里就感覺自己做復(fù)雜了。

后來才發(fā)現(xiàn)直接搜可以跑到52ms,不過到現(xiàn)在還是不會估計搜索的效率。只是感覺搜索很強(qiáng)大。



附錄 一:TLE代碼(集合DP)
 1 import java.util.Scanner;
 2 
 3 class Permutation{
 4     int []digits;
 5     int [][]visit;
 6     int size;
 7     
 8     void read(){
 9         Scanner sc = new Scanner(System.in);
10         String str = sc.next();
11         digits = new int[str.length()];
12         for(int i = 0; i < str.length(); i++)
13             digits[i] = str.charAt(i) - '0';
14     
15         size = 1 << digits.length;
16         visit = new int[size][17];
17         for(int i = 0; i < size; i++)
18             for(int j = 0; j < 17; j++){
19                 visit[i][j] = -1;
20             }
21     }
22     
23     boolean find(int a, int b){
24         
25         if(a==0)return b==0;
26         
27         if(visit[a][b] == 0)return false;
28         if(visit[a][b] == 1)return true;
29             
30         for(int i = 0; i < digits.length; i++){
31             if( ( (1<<i) & a ) == 0)continue;
32             
33             int na = a ^ (1<<i);
34             int nb = (17 + b - digits[i]) * 12 % 17;
35             if(na == 0 && digits[i] == 0continue;
36             
37             if( find( na, nb) ){
38                 visit[a][b] = 1;
39                 return true;
40             }
41         }
42         
43         visit[a][b] = 0;
44         return false;
45     }
46     
47     void print(int a, int b){
48         if( a == 0)return;
49         for(int i = 0; i < digits.length; i++){
50             if( ( (1<<i) & a ) == 0)continue;
51             
52             int na = a ^ (1<<i);
53             int nb = (17 + b - digits[i]) * 12 % 17;
54             if(na == 0 && digits[i] == 0continue;
55             
56             if( find( na, nb) ){
57                 print(na, nb);
58                 System.out.print(digits[i]);
59                 break;
60             }
61         }
62     }
63     
64     void work(){
65         if( find(size-10) )
66         {
67             print(size-10);
68             System.out.println();
69         }
70         else
71             System.out.println(-1);
72     }
73 }
74 
75 public class Solution{
76     public static void main(String[] args)throws Exception{
77         Permutation P = new Permutation();
78         P.read();
79         P.work();
80     }    
81 }

附錄二:Accept代碼(dfs)
 1 import java.util.Scanner;
 2 import java.util.Arrays;
 3 class Permutation{
 4     int []digits;
 5     int []ans;
 6     static int size = 10;
 7     
 8     void read(){
 9         Scanner sc = new Scanner(System.in);
10         String str = sc.next();
11         
12         ans = new int[ str.length() ];
13         digits = new int[size];
14         Arrays.fill(digits, 0);
15         
16         for(int i = 0; i < str.length(); i++)
17             digits[ str.charAt(i) - '0' ] ++ ;
18     }
19     
20     boolean dfs(int len, int res){
21         if(len == ans.length)return res == 0;
22         
23         for(int i = 0; i < size; i++){
24             if(i==0 && len == 0)continue;
25             if(digits[i] > 0){
26                 digits[i]--;
27                 
28                 ans[len] = i;
29                 if(dfs(len+1, (res*10 + i) % 17) )return true;
30                 
31                 digits[i]++;
32             }
33         }
34         return false;
35     }
36     
37     void work(){
38         if( dfs(00) ){
39             for(int i = 0; i < ans.length; i++)
40                 System.out.print(ans[i]);
41             System.out.println();
42         }
43         else
44             System.out.println(-1);
45     }
46 }
47 
48 public class Solution{
49     public static void main(String[] args)throws Exception{
50         Permutation P = new Permutation();
51         P.read();
52         P.work();
53     }    
54 }


只有注冊用戶登錄后才能發(fā)表評論。
相關(guān)文章:
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


posts - 26, comments - 7, trackbacks - 0, articles - 17

Copyright © 王之昊

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美激情91| 亚洲欧美日本日韩| 欧美一区二区日韩一区二区| 亚洲精品一区二| 欧美精品一区三区| 亚洲一区二区三区高清| 亚洲一区二区三区777| 欧美激情久久久久| 亚洲一二三区在线观看| 欧美成人免费在线观看| 亚洲欧美一区二区原创| 亚洲永久精品国产| 黑人操亚洲美女惩罚| 欧美黄色一级视频| 免费精品视频| 亚洲一区免费网站| 久久精选视频| 99精品视频一区二区三区| 一个人看的www久久| 国产婷婷一区二区| 亚洲国产va精品久久久不卡综合| 欧美日韩免费高清| 久久亚洲春色中文字幕久久久| 蜜臀av性久久久久蜜臀aⅴ四虎 | 亚洲国产一区二区a毛片| 亚洲国产一区视频| 国产精品视频观看| 欧美大片一区二区| 欧美视频观看一区| 久久免费一区| 免费成人在线视频网站| 欧美一区二区三区视频免费播放 | 韩国欧美一区| 欧美成人r级一区二区三区| 欧美午夜免费影院| 国内久久视频| 亚洲精品美女久久7777777| 国产日韩一区二区三区在线播放| 欧美激情亚洲| 激情成人在线视频| 亚洲影视综合| 亚洲第一久久影院| 亚洲欧美日韩第一区| 亚洲最新中文字幕| 欧美一区午夜精品| 亚洲欧美自拍偷拍| 欧美日韩一区二区视频在线 | 亚洲一区自拍| 99综合视频| 鲁大师影院一区二区三区| 久久国产精品网站| 国产精品高潮在线| 亚洲日本中文字幕| 亚洲国产欧美精品| 久久久夜色精品亚洲| 欧美一区亚洲一区| 国产精品久久久久久久一区探花| 亚洲精品国产视频| 亚洲日本久久| 久久中文字幕一区二区三区| 久久久精品一区二区三区| 国产精品午夜在线观看| 一区二区精品国产| 亚洲色图在线视频| 久久亚洲视频| 麻豆亚洲精品| 在线日韩欧美| 久久中文欧美| 亚洲无线一线二线三线区别av| 老鸭窝亚洲一区二区三区| 国产精品美女久久久久aⅴ国产馆| 亚洲日本欧美在线| 一本大道久久a久久精二百| 欧美成人免费全部观看天天性色| 蜜桃av噜噜一区| 亚洲大胆人体视频| 欧美sm重口味系列视频在线观看| 欧美成人视屏| 亚洲精品一区在线观看香蕉| 欧美激情按摩| 日韩午夜精品| 亚洲作爱视频| 免费h精品视频在线播放| 在线观看一区二区精品视频| 久久久久国产免费免费| 欧美www视频| 亚洲看片免费| 欧美日韩一区二区三区免费 | 欧美区日韩区| 一区二区欧美日韩| 久久成人资源| 亚洲国产精品免费| 欧美精品久久久久久久| 亚洲高清视频一区| 亚洲午夜av| 国产欧美不卡| 老司机午夜精品视频在线观看| 亚洲第一网站| 亚洲一区二区三区视频播放| 国产欧美日韩在线观看| 久久久久在线观看| 亚洲久久一区| 久久婷婷丁香| 亚洲最黄网站| 国产偷自视频区视频一区二区 | 亚洲巨乳在线| 国产精品毛片一区二区三区 | 亚洲综合色视频| 另类国产ts人妖高潮视频| 亚洲精品字幕| 国产日韩欧美精品一区| 欧美一区2区视频在线观看 | 亚洲欧洲av一区二区| 亚洲影院在线| 亚洲人成免费| 免费高清在线视频一区·| 欧美亚洲在线| 亚洲午夜久久久久久久久电影院| 在线免费观看日韩欧美| 国产人久久人人人人爽| 欧美日韩一区二区三区在线观看免| 久久国内精品自在自线400部| 99视频有精品| 亚洲精品美女| 亚洲国产欧美一区二区三区久久| 久久久综合激的五月天| 欧美一级片在线播放| 亚洲一区三区在线观看| 亚洲免费不卡| 亚洲人成网站777色婷婷| 亚洲欧洲精品一区二区三区| 亚洲欧美久久久久一区二区三区| 久久久www成人免费精品| 欧美极品在线视频| 老司机aⅴ在线精品导航| 久久精品国产免费| 久久国产精品久久国产精品 | 亚洲精品乱码久久久久久蜜桃麻豆| 国产日韩av在线播放| 国产精品久久久久91| 欧美涩涩视频| 欧美无乱码久久久免费午夜一区| 欧美日韩精品一区二区天天拍小说| 女同性一区二区三区人了人一 | 久久精品二区亚洲w码| 午夜精品在线| 久久精品成人一区二区三区| 欧美在线观看你懂的| 亚洲欧美另类国产| 欧美在现视频| 久久免费视频这里只有精品| 久久久久se| 开心色5月久久精品| 欧美国产先锋| 亚洲精品视频一区二区三区| 国产精品99久久不卡二区| 亚洲一区在线播放| 久久久久天天天天| 欧美精品日韩一区| 国产女人18毛片水18精品| 韩国三级在线一区| 亚洲理论在线观看| 亚洲欧美另类在线观看| 久久精品夜色噜噜亚洲a∨ | 国产区精品在线观看| 国产在线乱码一区二区三区| 精品盗摄一区二区三区| 亚洲欧洲三级电影| 在线性视频日韩欧美| 欧美一区二区成人6969| 欧美成人精品h版在线观看| 亚洲三级毛片| 亚洲一级在线观看| 久久手机免费观看| 欧美日韩国内| 国内伊人久久久久久网站视频| 91久久久国产精品| 欧美一区二区三区四区视频 | 一区在线免费观看| 99亚洲一区二区| 久久精品国产亚洲aⅴ| 欧美激情中文字幕乱码免费| 夜夜精品视频一区二区| 久久国产高清| 欧美日韩国产a| 精品成人久久| 欧美日韩国产不卡在线看| 国产亚洲欧美日韩在线一区| 亚洲精品1区| 久久精品国产99国产精品澳门| 亚洲国产精品视频一区| 午夜精品在线看| 欧美日韩国产一区精品一区 | 亚洲精品黄色| 欧美综合激情网| 国产精品国产三级国产普通话99 | 午夜精品视频在线| 欧美黑人多人双交| 欧美精品aa| 欧美激情一区二区三区蜜桃视频 |