기타만 다시 땀 + 기타 1대로 몰아서 편곡 추가
악보 받기
2021-01-29 : 구글드라이브로 링크 수정 완료
<% Session.CodePage = 65001 Response.ContentType = "application/json" Response.Charset = "utf-8" Dim callUrl Dim HttpReq Dim params origins = Request.QueryString("origins") destinations = Request.QueryString("destinations") callUrl = "https://maps.googleapis.com/maps/api/distancematrix/json?origins="&origins&"&destinations="&destinations&"&mode=transit&language=ko-KO&key=구글API키" Set HttpReq = Server.CreateObject("Msxml2.ServerXMLHTTP.6.0") HttpReq.open "GET", callUrl, False HttpReq.send Response.Write HttpReq.responseText %>
var curPos = null; var directionsDisplay = null; var directionsService = null; var storeList = new Array(); var findStoreFlag = false; storeList[0] = {lat: 37.5707940, lng: 126.9710600}; storeList[1] = {lat: 37.5704049, lng: 126.9722485}; storeList[2] = {lat: 37.5060580, lng: 127.0033890}; storeList[3] = {lat: 37.4843585, lng: 126.9022739}; storeList[4] = {lat: 37.6505030, lng: 127.0619600}; storeList[5] = {lat: 37.3850110, lng: 127.1206630}; storeList[6] = {lat: 37.5544795, lng: 126.9366329}; storeList[7] = {lat: 37.6677905, lng: 126.7646956}; storeList[8] = {lat: 37.7525750, lng: 127.0690960}; function initMap() { var map = new google.maps.Map(document.getElementById('map'), { zoom: 14, center: storeList[0] }); directionsDisplay = new google.maps.DirectionsRenderer; directionsService = new google.maps.DirectionsService; directionsDisplay.setMap(map); getLocation(); } function getLocation() { //위치 조회시작.. if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(showPosition,showError); } else { alert("Geolocation is not supported by this browser."); var map = new google.maps.Map(document.getElementById('map'), { zoom: 14, center: storeList[0] }); } } function fnSetCurLoc(position){ // 현재 위치를 저장 curPos = { lat: position.coords.latitude, lng: position.coords.longitude }; } function showPosition(position) { curPos = { lat: position.coords.latitude, lng: position.coords.longitude }; alert(curPos); fnFindStore();//가까운 위치 미리 찾기... directionsService.route({ origin:curPos, // Haight. destination: storeList[document.getElementById('selStore').value], travelMode: google.maps.TravelMode.TRANSIT, unitSystem: google.maps.UnitSystem.METRIC, avoidHighways: false, avoidTolls: false }, function(response, status) { if (status == google.maps.DirectionsStatus.OK) { directionsDisplay.setDirections(response); } else { window.alert('Directions request failed due to ' + status); } }); } var minDistance = 10000000; var minDistInx = 0; function fnFindStore(){ if(!findStoreFlag){ //한번만 찾게 flag로 조정 $.ajaxSetup({ async: false }); for(listCnt = 0 ; listCnt < storeList.length ; listCnt ++){ var callUrl = "/api/google/retDistance.asp"; var sendParams = { origins : curPos.lat + "," + curPos.lng, destinations : storeList[listCnt].lat + "," + storeList[listCnt].lng }; console.log(listCnt); $.getJSON( callUrl, sendParams ).done(function( data ) { console.log( "JSON Data: " + data.rows[0].elements[0].distance.value + ":::" + listCnt + ":::" + minDistInx + "::::" + minDistance); if(minDistance > data.rows[0].elements[0].distance.value){ //최소 거리를 계산해서 저장... minDistance = data.rows[0].elements[0].distance.value; minDistInx = listCnt; console.log(minDistance); console.log(listCnt); } }).fail(function( jqxhr, textStatus, error ) { var err = textStatus + ", " + error; console.log( "Request Failed: " + err ); }); } if(!findStoreFlag) findStoreFlag = true; } } function fnSetStore(){ console.log(minDistance); console.log(minDistInx); document.getElementById('selStore').value = minDistInx; directionsService.route({ origin:curPos, // Haight. destination: storeList[minDistInx], travelMode: google.maps.TravelMode.TRANSIT, unitSystem: google.maps.UnitSystem.METRIC, avoidHighways: false, avoidTolls: false }, function(response, status) { if (status == google.maps.DirectionsStatus.OK) { directionsDisplay.setDirections(response); } else { window.alert('Directions request failed due to ' + status); } }); } function showError(error){ switch (error.code){ case error.PERMISSION_DENIED: alert("User denied the request for Geolocation."); break; case error.POSITION_UNAVAILABLE: alert("Location information is unavailable."); break; case error.TIMEOUT: alert("The request to get user location timed out."); break; case error.UNKNOWN_ERROR: alert("An unknown error occurred."); break; } }
SELECT [dbo].[GetPercentageOfTwoStringMatching]('valentin123456' ,'valnetin123456')
CREATE FUNCTION [dbo].[GetPercentageOfTwoStringMatching]
(
@string1 NVARCHAR(100)
,@string2 NVARCHAR(100)
)
RETURNS INT
AS
BEGIN
DECLARE @levenShteinNumber INT
DECLARE @string1Length INT = LEN(@string1)
, @string2Length INT = LEN(@string2)
DECLARE @maxLengthNumber INT = CASE WHEN @string1Length > @string2Length THEN @string1Length ELSE @string2Length END
SELECT @levenShteinNumber = [dbo].[LEVENSHTEIN] ( @string1 ,@string2)
DECLARE @percentageOfBadCharacters INT = @levenShteinNumber * 100 / @maxLengthNumber
DECLARE @percentageOfGoodCharacters INT = 100 - @percentageOfBadCharacters
-- Return the result of the function
RETURN @percentageOfGoodCharacters
END
-- =============================================
-- Create date: 2011.12.14
-- Description: http://blog.sendreallybigfiles.com/2009/06/improved-t-sql-levenshtein-distance.html
-- =============================================
CREATE FUNCTION [dbo].[LEVENSHTEIN](@left VARCHAR(100),
@right VARCHAR(100))
returns INT
AS
BEGIN
DECLARE @difference INT,
@lenRight INT,
@lenLeft INT,
@leftIndex INT,
@rightIndex INT,
@left_char CHAR(1),
@right_char CHAR(1),
@compareLength INT
SET @lenLeft = LEN(@left)
SET @lenRight = LEN(@right)
SET @difference = 0
IF @lenLeft = 0
BEGIN
SET @difference = @lenRight
GOTO done
END
IF @lenRight = 0
BEGIN
SET @difference = @lenLeft
GOTO done
END
GOTO comparison
COMPARISON:
IF ( @lenLeft >= @lenRight )
SET @compareLength = @lenLeft
ELSE
SET @compareLength = @lenRight
SET @rightIndex = 1
SET @leftIndex = 1
WHILE @leftIndex <= @compareLength
BEGIN
SET @left_char = substring(@left, @leftIndex, 1)
SET @right_char = substring(@right, @rightIndex, 1)
IF @left_char <> @right_char
BEGIN -- Would an insertion make them re-align?
IF( @left_char = substring(@right, @rightIndex + 1, 1) )
SET @rightIndex = @rightIndex + 1
-- Would an deletion make them re-align?
ELSE IF( substring(@left, @leftIndex + 1, 1) = @right_char )
SET @leftIndex = @leftIndex + 1
SET @difference = @difference + 1
END
SET @leftIndex = @leftIndex + 1
SET @rightIndex = @rightIndex + 1
END
GOTO done
DONE:
RETURN @difference
END
화려한 금 명판 위에 글자가 새겨져 있다. 글귀는 화려하고 다양한 색으로 써있다: "네 놈은 '웨드나'의 둥지에 무단침입했다. 나의 수호자들을 이기고 지나 갈 순 없을 것이다!" |
그래서 나와 수비대들은 이 힌트를 남긴다: "콘트라-덱트라 어베뉴(오른쪽으로 가지 말라는 뜻)" 추신 - 트레버(게임 만든 놈) 병신! |
수호자 한 무리를 무찔렀지만, 더 많이 있다. 멍청한 녀석아 갈 수 있을때 돌아가라! |
벽에 있는 신중한 표지판을 읽었다: 사악한 마법사 웨드나의 거처! 마법사가 있는 공식 방문 시간은 오전 9시부터 오후3시까지! |
에뮬레이터의 장점으로.. 부하가 적게 나올때까지 강제 세이브 + 강제 로드 신공!! |
공략법은.. 승려로 얘를 벙어리로 만들면 쉽다. 마법이 너무 쎄다. 이기면 얻을 수 있는 웨드나의 아뮬렛을 착용하고 사용하면!! 좌표를 입력하라고 나오는데.. 그냥 아무 좌표나 입력하면 짠 하고 마을로 탈출!! |
축하합니다 당신은 아뮬렛을 되찾고 군주의 시험을 통과했습니다! 보상으로 미친 군주가 50,000GP와 EP를 내렸습니다! 또한 당신들을 그의 최정예 호위로 임명했습니다. 명예로운 계급장도 달았죠. |
var rightNow = new Date();
var res = rightNow.toISOString().slice(0,19).replace(/-/g,"").replace(/:/g,"");
레지스터 | 전원 입력 시 | 리셋 후 |
---|---|---|
PPUCTRL ($2000) | 0000 0000 | 0000 0000 |
PPUMASK ($2001) | 0000 0000 | 0000 0000 |
PPUSTATUS ($2002) | +0+x xxxx | U??x xxxx |
OAMADDR ($2003) | $00 | unchanged1 |
$2005 / $2006 latch | cleared | cleared |
PPUSCROLL ($2005) | $0000 | $0000 |
PPUADDR ($2006) | $0000 | unchanged |
PPUDATA ($2007) read buffer | $00 | $00 |
odd frame | no | no |
OAM | pattern | pattern |
NT RAM (external, in Control Deck) | mostly $FF | unchanged |
CHR RAM (external, in Game Pak) | unspecified pattern | unchanged |
bit PPUSTATUS ; clear the VBL flag if it was set at reset time vwait1: bit PPUSTATUS bpl vwait1 ; at this point, about 27384 cycles have passed vwait2: bit PPUSTATUS bpl vwait2 ; at this point, about 57165 cycles have passed
나의 10~20대를 보낸 잠실에서의 공연.. 오랜만에 가보니.. 여기가.. 마눌님과 자주 가던 영화관이었는데... 여긴 뭐가 있었는데... 란 추억도 떠올리며 기분좋게 감. 공연장은 좀 협소한 편이었고, 인천의 쥐똥나무 보다는 약간 크고... 인천 ...