I would solve this using the plugin Advanced Custom Fields.
1) create an ACF item with the following config
view larger
2) it will show a metabox when editing a Post, where you can select which Page the post should appear
3) in your page template, adapt this code to your needs
<?php
// START - THE LOOP
$the_ID = $post->ID;
$search_posts = get_posts(array(
'numberposts' => -1,
'post_type' => 'post',
'meta_key' => 'show_this_post_on_page'
));
if($search_posts) {
foreach($search_posts as $post_found) {
$key_value = get_post_meta($post_found->ID, 'show_this_post_on_page', true);
foreach($key_value as $key => $value) {
if($value==$the_ID) echo 'The post <strong>'.$post_found->post_title.'</strong> should appear in this page';
}
}
}
// END - THE LOOP
?>