C++による模範解答

#include <iostream>

int main() {
  int n;
  std::cin >> n;

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

    if (x % 3 == 0) {
      std::cout << " " << i;
      continue;
    }

    while (x) {
      if (x % 10 == 3) {
        std::cout << " " << i;
        break;
      }

      x /= 10;
    }
  }

  std::cout << std::endl;
}

Reference

 

オンラインジャッジではじめるC/C++プログラミング入門 (マイナビ)

AIZU ONLINE JUDGE のコース問題を題材にした解説書です。各トピックごとに C/C++ 言語の基礎的な内容を学習し、Introduction to Programming の演習問題にチャレンジしていきます。内容は敷居の高いものではなく、プログラミング初学者が取り組む例題からスタートしています。