zoukankan      html  css  js  c++  java
  • poj 2081 Recaman's Sequence (dp)

    Recaman's Sequence
    Time Limit: 3000MS   Memory Limit: 60000K
    Total Submissions: 22566   Accepted: 9697

    Description

    The Recaman's sequence is defined by a0 = 0 ; for m > 0, am = am−1 − m if the rsulting am is positive and not already in the sequence, otherwise am = am−1 + m. 
    The first few numbers in the Recaman's Sequence is 0, 1, 3, 6, 2, 7, 13, 20, 12, 21, 11, 22, 10, 23, 9 ... 
    Given k, your task is to calculate ak.

    Input

    The input consists of several test cases. Each line of the input contains an integer k where 0 <= k <= 500000. 
    The last line contains an integer −1, which should not be processed.

    Output

    For each k given in the input, print one line containing ak to the output.

    Sample Input

    7
    10000
    -1

    Sample Output

    20
    18658

    Java AC 代码

    import java.util.Scanner;
    
    public class Main {
    
        public static void main(String[] args) {
            
            Scanner sc = new Scanner(System.in);
            int n = 0;
            int[] result;
            boolean[] marked = new boolean[10000000];
            while((n = sc.nextInt()) != -1) {
                result = new int[n + 1];
                for(int i = 1; i < n + 1; i++) {
                    int a = result[i - 1] - i;
                    if(a > 0 && !marked[a]) {
                        result[i] = a;
                        marked[a] = true;
                    }
                    else {
                        result[i] = a + 2 * i;
                        marked[a + 2 * i] = true;
                    }
                }
                System.out.println(result[n]);
                for(int i = 0; i < 10000000; i++ )
                    marked[i] = false;
             }
        }
    }
  • 相关阅读:
    poj 1321 棋盘问题 (DFS深度优先搜索)
    HDOJ1312 Red and black(DFS深度优先搜索)
    《数据结构》例1.3
    hdoj1905 Pseudoprime numbers (基础数论)
    百练4003 十六进制转十进制(水题)
    第二天——2.23
    第一天——2.22
    返校——2.21
    被盗号了——2.19
    继续咸鱼——2.18
  • 原文地址:https://www.cnblogs.com/kkkkkk/p/5547104.html
Copyright © 2011-2022 走看看