import java.io.*;

class Main
{
  public static void main(String[] args) throws IOException
  {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    StringBuilder sb = new StringBuilder();

    int n = Integer.parseInt(br.readLine());

    for(int i = 1; i <= n; i++){

      int x = i;

      if(x % 3 == 0)

        sb.append(" " + i);

      else{

        while(x > 0){
          if(x % 10 == 3){
            sb.append(" " + i);
            break;
          }else {
            x /= 10;
          }
        }
      }  
    }
    System.out.println(sb);
  }
} import java.io.*; io.* java class Main
{
  public static void main(String[] args) throws IOException
  {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    StringBuilder sb = new StringBuilder();

    int n = Integer.parseInt(br.readLine());

    for(int i = 1; i <= n; i++){

      int x = i;

      if(x % 3 == 0)

        sb.append(" " + i);

      else{

        while(x > 0){
          if(x % 10 == 3){
            sb.append(" " + i);
            break;
          }else {
            x /= 10;
          }
        }
      }  
    }
    System.out.println(sb);
  }
} Main public static void main(String[] args) throws IOException
  {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    StringBuilder sb = new StringBuilder();

    int n = Integer.parseInt(br.readLine());

    for(int i = 1; i <= n; i++){

      int x = i;

      if(x % 3 == 0)

        sb.append(" " + i);

      else{

        while(x > 0){
          if(x % 10 == 3){
            sb.append(" " + i);
            break;
          }else {
            x /= 10;
          }
        }
      }  
    }
    System.out.println(sb);
  } main {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    StringBuilder sb = new StringBuilder();

    int n = Integer.parseInt(br.readLine());

    for(int i = 1; i <= n; i++){

      int x = i;

      if(x % 3 == 0)

        sb.append(" " + i);

      else{

        while(x > 0){
          if(x % 10 == 3){
            sb.append(" " + i);
            break;
          }else {
            x /= 10;
          }
        }
      }  
    }
    System.out.println(sb);
  } BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); br new BufferedReader(new InputStreamReader(System.in)) StringBuilder sb = new StringBuilder(); sb new StringBuilder() int n = Integer.parseInt(br.readLine()); n Integer.parseInt(br.readLine()) Integer.parseInt Integer br.readLine() br.readLine br for(int i = 1; i <= n; i++){

      int x = i;

      if(x % 3 == 0)

        sb.append(" " + i);

      else{

        while(x > 0){
          if(x % 10 == 3){
            sb.append(" " + i);
            break;
          }else {
            x /= 10;
          }
        }
      }  
    } int i = 1; int i = 1; i 1 i <= n i n i++ i++ i {

      int x = i;

      if(x % 3 == 0)

        sb.append(" " + i);

      else{

        while(x > 0){
          if(x % 10 == 3){
            sb.append(" " + i);
            break;
          }else {
            x /= 10;
          }
        }
      }  
    } {

      int x = i;

      if(x % 3 == 0)

        sb.append(" " + i);

      else{

        while(x > 0){
          if(x % 10 == 3){
            sb.append(" " + i);
            break;
          }else {
            x /= 10;
          }
        }
      }  
    } int x = i; x i if(x % 3 == 0)

        sb.append(" " + i);

      else{

        while(x > 0){
          if(x % 10 == 3){
            sb.append(" " + i);
            break;
          }else {
            x /= 10;
          }
        }
      } x % 3 == 0 x % 3 x 3 0 sb.append(" " + i) sb.append sb " " + i " " i {

        while(x > 0){
          if(x % 10 == 3){
            sb.append(" " + i);
            break;
          }else {
            x /= 10;
          }
        }
      } while(x > 0){
          if(x % 10 == 3){
            sb.append(" " + i);
            break;
          }else {
            x /= 10;
          }
        } x > 0 x 0 {
          if(x % 10 == 3){
            sb.append(" " + i);
            break;
          }else {
            x /= 10;
          }
        } if(x % 10 == 3){
            sb.append(" " + i);
            break;
          }else {
            x /= 10;
          } x % 10 == 3 x % 10 x 10 3 {
            sb.append(" " + i);
            break;
          } sb.append(" " + i) sb.append sb " " + i " " i break; {
            x /= 10;
          } x /= 10 x 10 System.out.println(sb) System.out.println System.out System System.out sb String[] args args
import java.io.*;

class Main
{
  public static void main(String[] args) throws IOException
  {
    BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    StringBuilder sb = new StringBuilder();

    int n = Integer.parseInt(br.readLine());

    for(int i = 1; i <= n; i++){

      int x = i;

      if(x % 3 == 0)

        sb.append(" " + i);

      else{

        while(x > 0){
          if(x % 10 == 3){
            sb.append(" " + i);
            break;
          }else {
            x /= 10;
          }
        }
      }  
    }
    System.out.println(sb);
  }
}