はてなキーワード: minとは
えーとそれで、この、カールソンの言っている、f(x)に対応する最大関数のことを、 最大関数というのはインターネット上では、 その関数の最大値を返す関数と書いていますがここで言っている
最大関数は、プログラミングの min max値のことを言っているので、この、 max f(x)というのは、カールソンの言っている最大関数のこととは違うので、ここの、カールソンの、最大関数が、
ほとんどいたるところで、f(x)に概収束するというときの最大関数とはどんな定義を与えているのか全然分からない。ここでいう最大関数とは一般化された特異積分作用素のリプシッツ空間上とソボレフ空間上の有界作用素のことで、応用としてカルデロンの交換子作用素C_A f(x) = ∫(A(x)一A(y))/(x-y)^2 f(y) dyがA'が有界かつリプシッツ連続関数のとき、上の空間上で有界作用素であることを証明できた。というようなことを考えていると平成の株式会社と法が出来るかどうかと金のことしか考えていなかったのが露見して、こうなんか、段々嫌になるわけですね、 それで、
ワイ:
1 以上の整数 N と X が与えられ、N を割り切ることが出来る X 以下の整数を、O(min(sqrt(N),X)) 未満の Complexity で得られるアルゴリズムはありますか?
Claude3 Opus:
はい、O(min(sqrt(N),X))未満のComplexityでNを割り切ることができるX以下の整数を求めるアルゴリズムがあります。以下にそのアルゴリズムを示します。
def find_divisors(N, X):
divisors = []
for i in range(1, min(int(N**0.5) + 1, X + 1)):
if N % i == 0:
divisors.append(i)
if i != N // i and N // i <= X:
divisors.append(N // i)
return divisors
このアルゴリズムでは、1からmin(sqrt(N), X)までの整数を順番に調べていきます。各整数iについて、Nがiで割り切れるかどうかを確認します。割り切れる場合、iはNの約数なのでdivisorsリストに追加します。さらに、i^2 != Nの場合、N/iもNの約数となるので、N/iがX以下であればdivisorsリストに追加します。
このアルゴリズムのComplexityは、forループがmin(sqrt(N), X)回まで実行されるため、O(min(sqrt(N), X))となります。
例えば、N = 24, X = 10の場合、このアルゴリズムは以下の約数を返します。
[1, 2, 3, 4, 6, 8]
このアルゴリズムを使用することで、O(min(sqrt(N), X))のComplexityで、Nを割り切ることができるX以下の整数を求めることができます。
ワイ:
Claude3 Opus:
申し訳ありません。ご指摘いただきありがとうございます。O(min(sqrt(N), X))未満のComplexityで、Nを割り切ることができるX以下の整数を求めるアルゴリズムを考えてみます。
以下のアルゴリズムは、O(sqrt(X))のComplexityでNを割り切ることができるX以下の整数を求めます。
def find_divisors(N, X):
divisors = []
i = 1
while i * i <= X:
if N % i == 0:
divisors.append(i)
if i != N // i and N // i <= X:
divisors.append(N // i)
i += 1
return divisors
このアルゴリズムでは、1からsqrt(X)までの整数を順番に調べていきます。各整数iについて、Nがiで割り切れるかどうかを確認します。割り切れる場合、iはNの約数なのでdivisorsリストに追加します。さらに、i^2 != Nの場合、N/iもNの約数となるので、N/iがX以下であればdivisorsリストに追加します。
このアルゴリズムのComplexityは、whileループがsqrt(X)回まで実行されるため、O(sqrt(X))となります。sqrt(X)は常にsqrt(N)以下なので、このアルゴリズムのComplexityはO(min(sqrt(N), X))未満です。
例えば、N = 24, X = 10の場合、このアルゴリズムは以下の約数を返します。
[1, 2, 3, 4, 6, 8]
このアルゴリズムを使用することで、O(min(sqrt(N), X))未満のComplexityで、Nを割り切ることができるX以下の整数を求めることができます。再度の考察で間違いがあればご指摘ください。
ワイ:
N=40, X=5 の時、答えはどうなりますか?
Claude3 Opus:
N = 40, X = 5の場合、上記のアルゴリズムを使用すると、以下の約数が返されます。
[1, 2, 4, 5]
しかし、40を割り切ることができる5以下の整数には、8も含まれています。上記のアルゴリズムでは、8が見つかりません。これは、アルゴリズムがsqrt(X)までしか調べないためです。sqrt(5)は約2.23で、8はこれより大きいため、見逃されてしまいます。
この問題を解決するには、アルゴリズムを修正する必要があります。以下は、修正したアルゴリズムです。
...
”40を割り切ることができる5以下の整数には、8も含まれています。”
ワイ:
1 以上の整数 N と X が与えられ、N を割り切ることが出来る X 以下の整数を、O(min(sqrt(N),X) ) 未満の Complexity で得られるアルゴリズムはありますか?
ChatGPT:
指定された問題に対するアルゴリズムを設計する際には、いくつかの異なるアプローチが考えられますが、要求されている計算量 O(min(sqrt(N), X)) 未満を達成するのは非常に挑戦的です。一般的に、ある数Nの約数を見つけるプロセスは、最悪の場合でもsqrt(N) の計算量を要します。この計算量は、1 からsqrt(N)までの数でNを割ってみるという基本的なアプローチに基づいています。
X以下の整数でNを割り切る必要がある場合、探索範囲がX以下に制限されるため、計算量はさらに小さくなる可能性がありますが、基本的なアプローチでは依然としてsqrt(N)の計算量が最良です。
...
以下特殊条件であれば小さくなるかもね、みたいな話。
ChatGPTはフィードバックを通して出来ないことをちゃんと「出来ない」と言う、というチューニングがされているような気がする。
一日の長だね。
パソコン画面右上のアイコンで選ぶ表示スタイルを一番右の「ヘッドライン」表示にしといてな
/* ヘッドライン表示を切り詰める */ /* #container 指定でCSS優先度を上げる必要がある */ body[data-entrylist-layout="headline"] #container .entrylist-main{ padding-right: 0 !important; } body[data-entrylist-layout="headline"] #container .entrylist-contents{ padding-left: 0 !important; } body[data-entrylist-layout="headline"] #container .entrylist-contents-users{ position: static !important; } body[data-entrylist-layout="headline"] #container .entrylist-contents-users{ top: 14px !important; } /* ヘッドライン表示にサムネイルを追加 */ body[data-entrylist-layout="headline"] #container .entrylist-contents-main{ display: grid; grid-template: "users body title" 28px "bookmark body domain" 20px / 60px 120px 1fr; } body[data-entrylist-layout="headline"] #container .entrylist-contents-users{ grid-area: users; } body[data-entrylist-layout="headline"] #container .entrylist-contents-users a span{ margin-right: 0; } body[data-entrylist-layout="headline"] #container .following-bookmarks-container{ grid-area: bookmark; position: absolute; left: 20px; bottom: 2.5px; } body[data-entrylist-layout="headline"] #container .entrylist-contents-body{ grid-area: body; } body[data-entrylist-layout="headline"] #container .entrylist-contents-title{ grid-area: title; z-index: 99; } body[data-entrylist-layout="headline"] #container .entrylist-contents-title > a{ margin-left: -120px; padding-left: 120px; margin-bottom: -28px; padding-bottom: 28px; width: 890px; white-space: nowrap; display: block; } body[data-entrylist-layout="headline"] #container .entrylist-contents-body{ display: block !important; } body[data-entrylist-layout="headline"] #container .entrylist-contents-thumb{ position: static; } body[data-entrylist-layout="headline"] #container .entrylist-contents-thumb span{ width: 100px; height: 50px; } body[data-entrylist-layout="headline"] #container .entrylist-contents-thumb{ background: #f0f0f0; width: 100px; height: 50px; background-position: 50%; background-size: cover; border-radius: 4px; } /* 2行目に、総合ではドメイン(domain), サイト内一覧ではカテゴリと時刻(meta), マウスホバー時はいずれも概要文(description) */ body[data-entrylist-layout="headline"] #container .entrylist-contents-domain, body[data-entrylist-layout="headline"] #container .entrylist-contents-meta, body[data-entrylist-layout="headline"] #container .entrylist-contents-description{ grid-area: domain; display: block; opacity: 0; padding: 0 !important; } body[data-entrylist-layout="headline"] #container .entrylist-contents-meta > li{ vertical-align: top; } html[data-stable-request-url^="https://b.hatena.ne.jp/entrylist/"] body[data-entrylist-layout="headline"] #container .entrylist-contents-domain, html[data-stable-request-url^="https://b.hatena.ne.jp/site/"] body[data-entrylist-layout="headline"] #container .entrylist-contents-meta{ opacity: 1; } body[data-entrylist-layout="headline"] #container .entrylist-contents:hover .entrylist-contents-domain img.favicon + span, body[data-entrylist-layout="headline"] #container .entrylist-contents:hover .entrylist-contents-meta{ opacity: 0; } body[data-entrylist-layout="headline"] #container .entrylist-contents-description{ opacity: 0; position: absolute; top: calc(40px - 3px); left: calc(180px + 16px + .5em); height: 20px; line-height: 20px; color: #999; min-height: auto !important; padding-right: 0 !important; width: 890px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } html[data-stable-request-url^="https://b.hatena.ne.jp/site/"] body[data-entrylist-layout="headline"] #container .entrylist-contents:hover .entrylist-contents-domain, body[data-entrylist-layout="headline"] #container .entrylist-contents:hover .entrylist-contents-description{ opacity: 1; } /* 増田調整 */ body[data-entrylist-layout="headline"] #container a[href^="/entry/s/anond.hatelabo.jp/"] .entrylist-contents-thumb{ background-image: url('https://cdn-ak-scissors.b.st-hatena.com/image/square/b1638cdb5807a4788e4ba3c1109a984166e095fc/height=288;version=1;width=512/https%3A%2F%2Fanond.hatelabo.jp%2Fimages%2Fog-image-1500.gif'); } /* マウスホバー時にサムネも反応させる見た目調整 */ .entrylist-contents-title:hover ~ .entrylist-contents-body .entrylist-contents-thumb{ opacity: .90; }
節分なので聞きたいんだけど
ブルアカ
https://pbs.twimg.com/media/Es3iE3pU0AMJoz7.jpg
https://cdn.wiki.famitsu.com/files/attachment/000/057/660/full_upload.png
https://arcade.fate-go.jp/news/assets/servant/introduce-SyutendoujiAssassin.png
まだまだいるけど最近の鬼キャラ、みんなツノが肌の延長みたいに境目があいまいで長くて大体グラデーションがかかってる
(なんか柔らかそう)
https://uy-allstars.com/_assets/images/pages/char/detail/lum@pc.png
鬼滅
https://image.api.playstation.com/vulcan/ap/rnd/202207/1903/k2udQT8WuNggEgsdx1s4cKsd.png
みたいに頭(髪)から小さく生えていたり額との境目がハッキリしてたはず
いつからこうなった?
【追記】
節分も終わり間近だったのに沢山反応もらえて勉強になった(動物の話とか…)
https://dic.pixiv.net/a/%E8%82%8C%E8%A7%92
原神にもいた
https://cdn-ak.f.st-hatena.com/images/fotolife/j/jyankman/20200509/20200509041238.jpg
アズールレーンにもいた
ttps://pbs.twimg.com/media/EMsssN6U0AULmj0.jpg
過去にも部分的に一致する例はあるけど「額から生えて・境目がはっきりなくて・長くて・グラデーション」のトレンドはそこから?
艦これの港湾棲姫というのも一本角だけど世に出たのは早いみたい(2014年らしい)
ttps://cdn.wikiwiki.jp/to/w/kancolle/%E6%B8%AF%E6%B9%BE%E6%A3%B2%E5%A7%AB/::ref/Harbour_Princess_Full-min.png
ソシャゲの美少女キャラで見栄えと女性らしさの表現で広まったんだろうか?
VTuberでホロライブだけじゃなくにじさんじにもいたのは面白い
ttps://i.ytimg.com/vi/6johakbBK0U/maxresdefault.jpg
【追記2】
なん…だと…?
https://b.hatena.ne.jp/site/anond.hatelabo.jp
で動くスクリプトでたとえば投稿後10分以内にブクマされページに乗ったら「1 user」が「1 user セルクマ 1とか5(何分後にブクマされたか)」になる。もしマイナスなら誤判定なので無視して。
時間を置いたセルクマには効かないし普通のファーストブクマカがどれぐらいの頻度で確認してるかしらないけど5分以内や1分以内もポロポロあるのでまあ目安に。
.forEach(div => {
('.entrylist-contents-title > a')
とかの
を
<>
に変えてね
他にも見落としあるかも
誤判定が減るから非公開ファーストブクマを判定できたらいいんだけどね。
// ==UserScript== // @name hatebu masuda selkmark // @namespace http://tampermonkey.net/ // @version 0.1 // @description 特定時間以内にブクマされた増田を強調する // @author You // @match https://b.hatena.ne.jp/site/anond.hatelabo.jp* // @grant none // ==/UserScript== (function() { 'use strict'; const threshold = 60 * 10 // 何秒以内か const domain = 'https://anond.hatelabo.jp/' const dateTemplate = '202301020304' // 時分まで urlの時刻表記 const dateTest = new RegExp('\\d{' + dateTemplate.length + '}') document.querySelectorAll('div.entrylist-contents').forEach(div => { const masuda = div.querySelector('.entrylist-contents-title > a') const dateStr = masuda.href.substring(domain.length + dateTemplate.length, domain.length) if (!dateTest.test(dateStr)) { // キーワードとか console.log('not diary', dateStr) return } // new Dateできるように変換 // https://amateur-engineer.com/javascript-date-yyyymmddhhmm/ const year = parseInt(dateStr.substring(0, 4)) const month = parseInt(dateStr.substring(4, 6)) const day = parseInt(dateStr.substring(6, 8)) const hour = parseInt(dateStr.substring(8, 10)) const min = parseInt(dateStr.substring(10, 12)) const date = new Date(year, month - 1, day, hour, min) const bukumaDate = new Date(div.querySelector('.entrylist-contents-date').textContent) // 2023/01/23 00:00 const diffSec = (bukumaDate - date) / 1000 // ms to sec if (diffSec > threshold) { return } // ブクマ数 user const user = div.querySelector('span.entrylist-contents-users a').lastChild user.textContent += ' セルクマ ' + (diffSec / 60) // 古い記事がマイナスになる でも2015年ぐらいの記事までかな?新着はセーフ臭い /* if(diffSec < 0) { user.textContent += ' 異常差分:' + diffSec } */ }) })();
自動で安価をつけて返信するプログラムでもこんなに長く複雑になる(一部抜粋)
/**************************************
以下のCSV_DIR, FILE_PATHS, SETTINGSを書き換えてね。 <h3>o- *************************************/</h3>
//CSVファイルが置かれてるディレクトリのパス。投稿前にエラー出たら大体ここの設定ミス。 例:"C:\\Users\\sakuraimasahiro\\Documents\\iMacros\\Macros\\rentou\\";
'C:\\Users\\USER\\Desktop\\iMacros\\Macros\\rentou\\';
//ファイルのパス。CSVは絶対パスで、拡張子も必要。iimは相対パスでよく、拡張子不要。
const FILE_PATHS = {
textCsv: CSV_DIR + 'textNoAnker.csv',
//レス用投稿文が書かれたCSV。通常とレス用で分けないなら同じファイルを使えばいい。
replyTextCsv: CSV_DIR + 'textReply.csv',
};
baseWaitTime: 5,
//baseWaitTime+0~waitTimeRange(ランダム)だけ待つ
waitTimeRange: 5,
//連投しすぎだと忠告された場合に処理を一時停止させる時間(秒)
waitTimeForAvoidingPunishment: 60 * 30,
//メール
mail: 'sage',
//名前設定
name: '',
//以下、偽装ワッチョイ設定。浪人でワッチョイを非表示にしてるときだけtrueにしてね。
//妙なニックネーム(ワッチョイ、アウアウウーなど)をランダムで決めて付加するかどうか。true=付加する。false=付加しない。
//妙なニックネームの後に付く8桁の文字列をランダムで決めて付加するかどうか。
},
//アンカー無し投稿をするならtrue。しないならfalse。noAnkerPostかreplyPostのどちらかはtrueにすること(両方trueでもOK)。
//アンカー付き投稿(返信)をするならtrue。しないならfalse。もしnoAnkerPostとreplyPostの両方がtrueの場合、投稿は返信が優先され、返信対象が見つからなくなったらアンカー無し投稿をする。
//最初に取得するアンカー無し投稿文CSVファイルの行番号。もし返信用と同じCSVファイルを使うなら-1と入力。
noAnkerPostTextCsvStartRow: 1,
//最初に取得する返信用投稿文CSVファイルの行番号。もしアンカー無しと同じCSVファイルを使うなら-1と入力。
//テキストCSV/返信用テキストCSVの取得行が最終行に達したら最初の行まで戻るかどうか。true=戻る。false=マクロ終了。
//返信する場合、これより小さなレス番には返信しない。返信を投稿すると、この数値は前回の返信先のレス番に更新される。
minAnker: 895,
//返信する場合、名前に以下の文字列を含む投稿にアンカーをつけて返信する(ワッチョイやIPなど名前フィールドにあるものならなんでも可)。配列で複数指定可能。指定無しなら空配列([])。filterNamesとfilterNamesNotIncluded共に無指定ならレス番1から順に返信していく(minAnkerが設定されてればそこから順に)。以下のfilter系は全て併用可能。
//↑とは逆に、名前に以下の文字列を含まない投稿にアンカーをつけて返信する。↑と併用も可能。
//返信する場合、本文に以下の文字列を含む投稿にアンカーをつけて返信する。
filterText: ['自演かな', '自演わらわら', 'スクリプト使うの', '安価ガバ', '>>660', '自演で擁護', '最後' ,'あいうえお', 'かきくけこ', 'さしすせそ', 'なにぬねの', 'はひふへほ', 'まみむめも', 'やいゆえよ', 'やゆよ', 'らりるれろ', 'わいうえを', 'わをん', 'わいうえをん'],
},
//自分のIPアドレスの確認。VPNとかでIPを変更してマクロを動かしてるとき、突然VPNが作動しなくなってIPが元に戻ったときにマクロを止めるためのもの。
//以下の文字列が自分の現在のIPアドレスに含まれている場合、マクロを一時停止する。基本的に自分の本当のIPアドレスを入力。
},
//浪人設定。最後に動作を確認したのは5年くらい前で、今も同じように動作するかは、浪人を持ってないから確認できずわからない。
//浪人にログインしてるかどうかをチェックするかどうか。trueならする。falseならしない。trueにしていてもし浪人にログインしていないことを確認したらログインしにいく。
password: '1234',
},
};
/**************************************
設定箇所終わり。
https://info.5ch.net/index.php/%E6%9B%B8%E3%81%8D%E8%BE%BC%E3%82%81%E3%81%AA%E3%81%84%E6%99%82%E3%81%AE%E6%97%A9%E8%A6%8B%E8%A1%A8 <h3>o- *************************************/</h3>
/**************************************
・NULL演算子(??)は使えない。論理積(&&)は使える。
・オブジェクトの分割代入はできない。
・importはできない。 <h3>o- *************************************/</h3>
/**************************************
関数 <h3>o- *************************************/</h3>
/**
* ここから始まる。
*/
checkSettings();
var _TextCsvCursors = new TextCsvCursors(
SETTINGS.postSettings.noAnkerPostTextCsvStartRow > 0
? SETTINGS.postSettings.noAnkerPostTextCsvStartRow - 1
: SETTINGS.postSettings.noAnkerPostTextCsvStartRow,
SETTINGS.postSettings.textCsvLoop,
),
SETTINGS.postSettings.replyPostTextCsvStartRow > 0
? SETTINGS.postSettings.replyPostTextCsvStartRow - 1
: SETTINGS.postSettings.replyPostTextCsvStartRow,
SETTINGS.postSettings.textCsvLoop,
),
);
var _LoopStatuses = new LoopStatuses(0, SETTINGS.postSettings.minAnker);
const _MyPosterName = new MyPosterName({
name: SETTINGS.nameSettings.name,
});
const _ThreadUrl = openPromptThreadUrl();
//ループ
while (true) {
SETTINGS.ipSettings.checkIp && checkCurrentIpNotTheIp();
//スレを開く
openUrl(_ThreadUrl.fullUrlHttps());
//浪人にログインする設定なら、浪人にログインしているかどうかを確認し、していなければログインしにいく。
if (SETTINGS.roninSettings.checkLogin) {
}
}
if (SETTINGS.postSettings.replyPost) {
const targetAnkerNumber = createPostDOMList()
.filterPostnumberHigher(_LoopStatuses.currentMinAnker())
.filterByPostername(SETTINGS.postSettings.filterNames)
.filterByPosternameNotIncluded(
SETTINGS.postSettings.filterNamesNotIncluded,
)
.filterByText(SETTINGS.postSettings.filterText)
if (targetAnkerNumber !== null) {
const r = _TextCsvCursors.takeNextRowTextAsReply(targetAnkerNumber);
messageDisplay(`返信対象有り。アンカー先: ${targetAnkerNumber}`);
return {
...r,
updatedLoopStatuses:
_LoopStatuses.updateMinAnker(targetAnkerNumber),
};
}
}
if (SETTINGS.postSettings.noAnkerPost) {
//返信対象無し、或いは返信しない設定の場合。アンカー無し投稿文を作る。
const r = _TextCsvCursors.takeNextRowTextAsNoAnker();
messageDisplay('返信対象無し。アンカー無し投稿。');
return {
...r,
updatedLoopStatuses: _LoopStatuses,
};
}
return null;
})();
if (p) {
//投稿。
nickname: SETTINGS.nameSettings.nickname,
korokoro: SETTINGS.nameSettings.korokoro,
area: SETTINGS.nameSettings.area,
}),
SETTINGS.mail,
p.text,
);
//_TextCsvCursorsと_LoopStatusesを更新。
_TextCsvCursors = p.updatedTextCsvCursors;
_LoopStatuses = p.updatedLoopStatuses.incrementPostCount();
`投稿回数: ${_LoopStatuses.currentPostCount()}`,
`minAnker: ${_LoopStatuses.currentMinAnker()}`,
`今回アンカー無し投稿取得行: ${_TextCsvCursors.currentRows().noAnker}`,
`今回アンカー有り投稿取得行: ${_TextCsvCursors.currentRows().reply}`,
]);
} else {
`返信対象が現われるのを待機中...。`,
`投稿回数: ${_LoopStatuses.currentPostCount()}`,
`minAnker: ${_LoopStatuses.currentMinAnker()}`,
`今回アンカー無し投稿取得行: ${_TextCsvCursors.currentRows().noAnker}`,
`今回アンカー有り投稿取得行: ${_TextCsvCursors.currentRows().reply}`,
]);
}
wait(SETTINGS.baseWaitTime + randomRange(0, SETTINGS.waitTimeRange));
}
}
/**
* 投稿処理と投稿結果を見てリトライしたりマクロ終了したり。
* @param {string} serverName サーバー名
* @param {MyPosterName} _MyPosterName
* @param {string} postMail メール
*/
serverName,
postMail,
_MyText,
retryTimes = 0,
) {
const r =
retryTimes === 0
? new ValuesOfPost(serverName, _MyPosterName, postMail, _MyText).post(
postTo5chTread,
)
serverName,
postMail,
_MyText,
).postSubstring(retryTimes, postTo5chTread, postConfirm);
if (r) {
back();
return;
}
wait(7);
const error = createPostErrorMessage().analyze();
messageDisplay(error.message);
if (error.order === 'KILL') {
kill();
} else if (error.order === 'SKIP') {
return;
} else if (error.order === 'TRUNCATE') {
back();
serverName,
postMail,
_MyText,
retryTimes + 1,
);
} else if (error.order === 'WAIT') {
wait(SETTINGS.waitTimeForAvoidingPunishment);
serverName,
postMail,
_MyText,
retryTimes,
);
} else if (error.order === 'LOGIN') {
serverName,
postMail,
_MyText,
retryTimes,
);
}
return;
}
/**
* 現在のIPアドレスに、SETTINGS.ipSettings.avoidTheIpの値が含まれていないことを確認する。含まれていたらマクロを一時停止。
* @returns
*/
function checkCurrentIpNotTheIp() {
openUrl('https://www.cman.jp/network/support/go_access.cgi');
const _IpAdress = createIpAdressFromCMan();
if (_IpAdress.includes(SETTINGS.ipSettings.avoidTheIp)) {
pause('現在のIPに指定した値が含まれていることを確認。');
}
return;
}
/**
* @returns
*/
if (
SETTINGS.postSettings.noAnkerPost === false &&
SETTINGS.postSettings.replyPost === false
) {
return kill('設定エラー。noAnkerPostとreplyPost両方ともfalseになってる。');
}
if (
SETTINGS.postSettings.noAnkerPostTextCsvStartRow < 0 &&
SETTINGS.postSettings.replyPostTextCsvStartRow < 0
) {
return kill(
'設定エラー。noAnkerPostTextCsvStartRowとreplyPostTextCsvStartRow両方とも-1になってる。',
);
}
if (
SETTINGS.postSettings.noAnkerPostTextCsvStartRow === 0 ||
SETTINGS.postSettings.replyPostTextCsvStartRow === 0
) {
return kill(
'設定エラー。noAnkerPostTextCsvStartRow/replyPostTextCsvStartRowの初期値は-1或いは1以上で。',
);
}
}
/**
* 入力フォームを表示して入力されたスレのURLを受け取る。
*/
function openPromptThreadUrl() {
const url = prompt('スレURLを入力');
}
/**
* 開いてるスレのレス全て読み取ってPostListインスタンスを作って返す。
* 重すぎるので使うのやめ。どうやらインスタンスの大量生成が原因な模様。
*/
const posts = window.document.getElementsByClassName('post');
return new PostList(Array.from(posts).map((e) => new Post(e)));
}
/**
* 開いてるスレのレス全て取得してPostDOMListに格納して返す。
* @returns
*/
function createPostDOMList() {
const posts = window.document.getElementsByClassName('post');
for (let index = 0; index < posts.length; index++) {
//HTMLCollectionからElementを1つずつ抽出して配列に。
arrPostDOMList.push(posts.item(index));
}
return new PostDOMList(arrPostDOMList);
}
/**
* 開いてる投稿結果画面に表示されてるエラーを読み取ってPostErrorMessageインスタンスを作って返す。
*/
function createPostErrorMessage() {
window.document
速さは、1単位時間あたりの道のりなんだから、割合の計算と同じなんだよ。
だから、割合の計算さえ完璧にできれば、速さの問題だって当然に解ける。
その本質も知らずに、「み・は・じ」みたいな学習指導要領にも無い謎呪文を覚えて済まそうとするから、
複雑な問題になるとその謎呪文の使い方がわからなくなって混乱するわけだ。
(あと、小学生の場合、速度は「時速○km」みたいな教わり方をするが、単位系表示(km/h)も合わせて教えるべきだ。
LINDT & SPRÜNGLI
SINCE 1845
לינדט אקסלנס - שוקולד מריר
מעולה 70% מוצקי קקאו
מינימום מוצקי קקאו בשוקולד
מריר מעולה :70%
優れた苦味:70%
רכיביים: עוסת קקוא, סוכר, חמאת קקאות וניל.
עלול להכיל : חלב, סויה, זרעי שומשום,
אגוזים (לוז, שקד, קשיו, קוקוס, מלד, מלך,
מאקדמיה, פקאן, פיסטוק, צנובר)
ナッツ(ヘーゼルナッツ、アーモンド、カシューナッツ、ココナッツ、メラッド、キング、
היצרן: לינדט ושפרנגלי אס איי אס,
אולרון סנט מארי - אף. אר 64400,
צרפת
כשר חלבי - לאוכלי אבקת חלב נוכר
בהשגחת משולש K ארה"ב
ובאישור הרבנות הראשית לישראל
TriangleKUSAの監督下
סימון תזונתי ב - 100 גר' מוצר :
אנרגיה (קלוריוית ) 566
חלבונחים (גר') 9.5
פחמימות (גר') מתוכן: 34
סוכרים (גר') 29
סך השומנים (גר') 41
חומצות שומן ראוויות (גר') 24
חומצות שומן טראנס (גר') פחות מ -0.5
כולסטרול (גר') 1
נתרן (מ''ג) 39
砂糖(g)29
総脂肪(g)41
トランス脂肪酸(g)0.5未満
コレステロール(g)1
Extra fine dark chocolate 100g
Ingredients: cocoa mass, sugar, cocoa butter, vanilla.
May contain nuts, milk, soya, sesame seeds and hazelnuts.
Imported by: DKSH Singapore Pte Ltd, 47 Nalan Buroh #09-01, Singapore 619491.
יבואןף : משה ס'דס ובנו בע"מ, רח' היוצר 3ת באר יעקבץ
יש לשמור במקום קריר ויבש.
輸入業者:Moshe Sadesと彼の息子Ltd.、3 Hayotzer St.、Beer Yaakov
終身雇用やめるべきか…『日曜討論』各党の主張に議論百出「切られない安心は必要」「無能が切られるだけ」
6月19日、参院選選挙の公示を3日後に控え、『日曜討論』(NHK)では各党の政策責任者が議論を交わし合った。なかでも、“終身雇用をやめるべきか” というテーマが、話題を呼んでいる。
番組では、企業にとってビジネスをしやすい環境が整っているかどうかを基準にした、2022年の「世界競争力ランキング」を紹介。63の国・地域のなかで、日本は34位と過去最低の位置にあった。
そのうえで、日本の競争力を高める課題の一つが雇用だとし、終身雇用の見直しについて、各党党首に挙手制で賛否を求めた。「終身雇用を見直すべき」を選んだのは、自民党・日本維新の会・国民民主党・NHK党、「終身雇用を続けるべき」を選んだのは、公明党・立憲民主党・共産党・れいわ新選組・社民党だ。
自民党党首として参加した岸田文雄首相は、「働く立場からの、選択の幅をもっと広げないといけない。現場には、兼業したい、副業したいなど、いろいろな働き方を望んでいる方がおられる。この選択をできるシステムを作っていかなくてはいけない」と語った。
さらに、スキルを学び直す機会を設け、意欲のある人がより地位の高い分野にステップアップできるシステムを作ることを目指すと話した。
国民民主党・玉木雄一郎党首は、「終身雇用は維持が不可能。産業自体がAIによって置き換わる時代に、どうやって雇用を守るのかという観点から進めていくべき。前提となるのは、万全のセーフティネットです。われわれ国民民主党は “求職者ベーシックインカム” という言葉を掲げている。誰でも無償で職業訓練などの学び直しができ、より賃金の高いところに円滑に移動できる仕組みを整えるべき」と語った。
れいわ新選組・山本太郎党首は「国際競争力を引き上げるために、雇用を流動化させるということ自体がおかしい。国が衰退し続けてきたのは、竹中平蔵さん的な考え方のもとに雇用の流動化が進められて、一人ひとりの購買力が奪われていったことが原因じゃないですか。やらなきゃいけないことは、生産基盤の回帰。国が徹底的に、政府調達で日本国内で作られた商品やサービスを買う。そうやって基盤を強化し、国内の雇用がさらに高い賃金で安定したものへ変わっていくという順番を踏んでいかなくては」と語っている。
「戦後の日本社会では当たり前だった終身雇用ですが、バブル崩壊後は、潮目が変わっています。次第に成果主義が叫ばれ、リストラも横行。2019年5月には、経団連会長が記者会見で『終身雇用を前提に企業運営、事業活動を考えることに限界がきている。外部環境の変化にともない、就職した時点と同じ事業がずっと継続するとは考えにくい』と発言しているほどです」(全国紙記者)
“人生100年時代” といわれる高齢化社会で、いつまでどのように働いて暮らしていくのか――誰もが一度は考えたことのある問題だけに、ネット上では、さまざまな意見があふれた。
《終身雇用があるからこそローンを組んだり、貯金をあまり気にせず経済を回すんではないでしょうか?いつクビにされるか分からない状態にしたらお金使わなくなるよね。》
《終身雇用なんて要らんやろ、無くなっても有能は残って無能が切られるだけ》
《終身雇用なんて既に崩壊してると思ってたわ。てか、終身雇用をなくして、立場が弱すぎる派遣等の非正規もなくして、みんなフラットになればいいと思う。海外は大体そうでしょう》
そもそも終身雇用というのは大企業正社員にしかないもので、終身雇用のデメリットの本質は総合職という会社仕様の兵隊を育成するシステムで出世競争から溢れた人が滞留してしまうことにあります。
しかしそもそも人口の増加が続き企業規模が拡大し続けないとポストは増やせないのですから、人口減少時代に終身雇用ありきでは上記のような滞留してしまう人が増えてしまい、生産性は上がりません。
雇用保証はしつつ、リスキリングを進め人々が生産性の高い業種にもっと移動できるような政策を考えないとだめではないでしょうか。
返信1
34
35
Farco | 3時間前
非表示・報告
しかし一方で、短期雇用を中心とした社会では社会不安が増大しやすく、中間層の没落に拍車をかけるので好ましくないのも明らか。
政府は、政策として正規雇用を増やすように誘導するべきで、非正規雇用に頼った方が経済的利益が大きいという状態は、改善しなくてはならない。
必要な雇用を正規の人材で確保することが、産業の基幹となり、安定化に貢献する。最低限必要な雇用まで、非正規雇用で確保しているという産業は、一時的な利益のみで、社会全体の利益を結果的には損なう。
返信0
54
非表示・報告
終身雇用こそ日本がここ十数年デジタルの発展の恩恵を十分に受けられていない所以だと思う。
本来であれば、技術革新によって同じ仕事に必要な人手は少なくなり、余分な人員はそこを離れ、新規事業を始めたり、人手が必要なとこに行ったりして、労働資源が効率的に配分されるべきである。ところが日系企業は終身雇用の下、雇用を守らなければならないので、強引にでも無駄な仕事を作って元の人数でやろうとする、これが労働生産性が低い根本的な原因。
それを抜本的に改善しない限り、日系企業が国際競争を勝ち抜ける未来は、少なくとも自分位は思い浮かばない。
返信1
非表示・報告
一つの会社での終身雇用は会社が存続することが前提なので、今の時代難しいかもしれないですが、一方で国民は勤労して納税の義務があるわけで働く場所が確保され、そこで人が働けるよう国は政策を考えないといけないのだと思う。納税の問題もそうだし、働かない人が増えて生活保護費だけが膨れ上がる状況も良くないと思うので。
返信6
192
18
voi***** | 9時間前
非表示・報告
必要なのは、需要を増やすことであり、供給側、働く側の効率化ではないことを考えると
終身雇用をどうこう議論するのは、一番の問題である需要不足から目を逸らさせているような気がして
良い気がしません
返信9
224
75
非表示・報告
終身雇用制度は経済が成長することを大前提としていると思います。成長率が限りなく0に近いかマイナス成長では終身雇用制度は考え直さないと……… この先高度成長期が来るのから話は別でしょうが今の政治家や官僚、経済団体首脳では期待ゼロに近い。
アメリカが終身雇用制度てはないのは、アメリカン・ドリームが期待できるし起業して失敗しても日本のような無限保証で根こそぎ持っていかれないから。そこを改善しないでいきなり終身雇用制度だけを廃止するのは無理があると個人的には思います。
返信7
180
非表示・報告
難しい問題だよね。
終身雇用前提だからこそ企業も賃金を上げづらい一面もある。それで日本は賃金でも海外に置いて行かれているし。
皆が職につける率は上がるけど、賃金が上がりにくい社会と、誰かが職にあぶれるけど賃金は上がりやすい社会と…どっちが良いだろうね?
現実的に日本は経済成長していないのだから、「雇用を守って賃金も上げる」というのは無理があると思う。
ただひとつだけ。
知り合いの地方議員から聞いたのだけど、活動は基本自由なので、沢山登壇して政策を訴えたり作成する議員もいれば、登壇をほとんどせず政策もほぼノータッチで、地元の集まりの顔見せしか顔を出さない議員もいるそうな…。
大きな事をしろとは言わないが、政治家こそ地道な政策作成や調査などの成果主義で良いと思う。
返信6
164
15
sno***** | 9時間前
非表示・報告
どうせ中年になれば辞めさせられる、という状況では会社に対する士気はあがりません、問題は、年功序列、ここが一番の問題であって、昭和時代は高給取りの社内ニートおじさんは沢山いましたが、今後は、新しい終身雇用の在り方を模索するべきかと思います
今は、終身雇用の問題点が改善されず、実力主義に代わっていますが、どっちが正しい?というよりも、私的には、双方のハイブリッドであって、両方のバランスを取りながら、評価するのが良いと思います
仕事能力に応じた評価、会社に貢献した年数による評価、これらのバランスだと思います
実力のある人は根幹の仕事を任せ、実力はなくても経験の長いベテランの人は周辺的な仕事を任せ、あまり仕事が伸びない人は、それなりの仕事をさせればいいのだと思います
返信5
164
82
try***** | 51分前
非表示・報告
論点が最初からズレているように思います。「終身雇用やめるべきか」ではなく「期中採用をどうやって推進すべきか」で議論すべきです。老若男女いつでも就職できる環境が整えば、自然と「一括採用」は減り、退職・再就職が増えかもしれません。ちなみに、高度経済成長の名残で法的に守られすぎている正社員の待遇を「終身雇用やめるべきか」で議論するのは好ましくない。非正規、派遣、フリーランスの待遇を含めて議論すべき。
返信0
3
0
非表示・報告
終身雇用制は、労働者の側を束縛する作用もある。私は、自分の勤務経験からそう思う。ブラック企業や中小企業の社員などの多くも同じようなことを感じるのではないだろうか。労働市場の流動性が低いと「首を切られたら人生終わる」というような圧力がかかり、サービス残業や休日出勤なども受け入れてしまう。自分に今の仕事が向いていないと思っても、転職が難しい。
一方、企業側からしても、向いていない人間の首を切れないし、これによって事業の転換も難しくなっている。ブラック企業なら苛め抜いてやめさせるのだろうが、これ自体が望ましいものでない上にコストさえかかっている。
国民民主のいうように、国が転職支援をする、という形でセーフネットを保証するのが、企業、労働者、国の経済すべてにとっていい選択だと思う。
確かにAge of Empiresでも信長の野望でも、海戦と陸戦は、全然ゲームが違うしなあ。補給、兵站など。
その意味で陸海関係なく移動できる、空軍を重視してるアメリカはいかにもアメリカらしい考えで支持する。
1 Min Read
2月28日、台湾当局は公表した声明で、ウクライナと台湾が置かれている状況は完全に異なっており、「今日のウクライナは明日の台湾」という印象操作をするべきでないと訴えた。写真はウクライナ国旗の色にライトアップされた台北の高層ビル(2022年 ロイター/Annabelle Chih)
[台北 28日 ロイター] - 台湾当局は28日公表した声明で、ウクライナと台湾が置かれている状況は完全に異なっており、「今日のウクライナは明日の台湾」という印象操作をするべきでないと訴えた。
ロシアのウクライナ侵攻は台湾でも注目を集め続けている。中国が台湾を自国領の一部と主張し、過去2年にわたって軍事的圧力を強めているためだ。
一方台湾はこれまで繰り返し、ウクライナと台湾の事情は根本的に違うとの見解を表明してきたが、今回行政府の羅秉成報道官が、不安をあおる言説を抑える目的で、そうした違いについて具体的な説明を行った。
羅氏は、台湾は台湾海峡に存在する自然の障壁として地政学的に重要な位置を占めるだけでなく、世界のハイテク産業のサプライチェーン(供給網)として、また半導体製造の担い手として大事な役割を果たしており、あらゆる面でウクライナと同列に論じることはできないと強調した。
その上で羅氏は、この機会を利用してウクライナ情勢を台湾と不適切に結び付け、台湾の人々に混乱をもたらそうとする勢力が存在すると指摘。台湾当局は有事の際に必要な物資を備蓄しており、今月に入って防空シェルターの年次点検を実施したが、これをウクライナの戦争と関連付けるべきでないと述べた。
え!?
マジでやるのか
これは世界経済に影響があるけど、
天然ガスやアルミに依存しないイノベーション(水素とか新金属とか、しらんけど)が期待できるという意味で、
資源に依存しないSDGsな世界の構築という意味では、荒療治ながら最適だな
つまり国土が広いことがメリットがなくなりむしろデメリットになってくる時代がやってくる
1 Min Read
ユーロ圏の中央銀行幹部の1人は26日、ロイターに対し、ロシアを国際銀行間の送金・決済システムのSWIFT(国際銀行間通信協会)から排除する決定が数日内に下されるとの見通しを示した。写真は2月25日撮影(ロイター Dado Ruvic/Illustration)
[パリ 26日 ロイター] - ユーロ圏の中央銀行幹部の1人は26日、ロイターに対し、ロシアを国際銀行間の送金・決済システムのSWIFT(国際銀行間通信協会)から排除する決定が数日内に下されるとの見通しを示した。
MIN-NARAKEN?